Browse Source

Brightness, Contrast

af/merge-core
James Jackson-South 9 years ago
parent
commit
abab7df1e4
  1. 53
      tests/ImageSharp.Tests/Processing/Effects/BrightnessTest.cs
  2. 53
      tests/ImageSharp.Tests/Processing/Effects/ContrastTest.cs
  3. 57
      tests/ImageSharp.Tests/Processors/Filters/BrightnessTest.cs
  4. 56
      tests/ImageSharp.Tests/Processors/Filters/ContrastTest.cs

53
tests/ImageSharp.Tests/Processing/Effects/BrightnessTest.cs

@ -0,0 +1,53 @@
// <copyright file="BrightnessTest.cs" company="James Jackson-South">
// Copyright (c) James Jackson-South and contributors.
// Licensed under the Apache License, Version 2.0.
// </copyright>
namespace ImageSharp.Tests.Processing.Effects
{
using ImageSharp.PixelFormats;
using Xunit;
public class BrightnessTest : FileTestBase
{
public static readonly TheoryData<int> BrightnessValues
= new TheoryData<int>
{
50,
-50
};
[Theory]
[WithFileCollection(nameof(DefaultFiles), nameof(BrightnessValues), StandardPixelType)]
public void ImageShouldApplyBrightnessFilter<TPixel>(TestImageProvider<TPixel> provider, int value)
where TPixel : struct, IPixel<TPixel>
{
using (Image<TPixel> image = provider.GetImage())
{
image.Brightness(value)
.DebugSave(provider, value, Extensions.Bmp);
}
}
[Theory]
[WithFileCollection(nameof(DefaultFiles), nameof(BrightnessValues), StandardPixelType)]
public void ImageShouldApplyBrightnessFilterInBox<TPixel>(TestImageProvider<TPixel> provider, int value)
where TPixel : struct, IPixel<TPixel>
{
using (Image<TPixel> source = provider.GetImage())
using (var image = new Image<TPixel>(source))
{
var bounds = new Rectangle(10, 10, image.Width / 2, image.Height / 2);
image.Brightness(value, bounds)
.DebugSave(provider, value, Extensions.Bmp);
// Draw identical shapes over the bounded and compare to ensure changes are constrained.
image.Fill(NamedColors<TPixel>.HotPink, bounds);
source.Fill(NamedColors<TPixel>.HotPink, bounds);
ImageComparer.CheckSimilarity(image, source);
}
}
}
}

53
tests/ImageSharp.Tests/Processing/Effects/ContrastTest.cs

@ -0,0 +1,53 @@
// <copyright file="ContrastTest.cs" company="James Jackson-South">
// Copyright (c) James Jackson-South and contributors.
// Licensed under the Apache License, Version 2.0.
// </copyright>
namespace ImageSharp.Tests.Processing.Effects
{
using ImageSharp.PixelFormats;
using Xunit;
public class ContrastTest : FileTestBase
{
public static readonly TheoryData<int> ContrastValues
= new TheoryData<int>
{
50,
-50
};
[Theory]
[WithFileCollection(nameof(DefaultFiles), nameof(ContrastValues), StandardPixelType)]
public void ImageShouldApplyContrastFilter<TPixel>(TestImageProvider<TPixel> provider, int value)
where TPixel : struct, IPixel<TPixel>
{
using (Image<TPixel> image = provider.GetImage())
{
image.Contrast(value)
.DebugSave(provider, value, Extensions.Bmp);
}
}
[Theory]
[WithFileCollection(nameof(DefaultFiles), nameof(ContrastValues), StandardPixelType)]
public void ImageShouldApplyContrastFilterInBox<TPixel>(TestImageProvider<TPixel> provider, int value)
where TPixel : struct, IPixel<TPixel>
{
using (Image<TPixel> source = provider.GetImage())
using (var image = new Image<TPixel>(source))
{
var bounds = new Rectangle(10, 10, image.Width / 2, image.Height / 2);
image.Contrast(value, bounds)
.DebugSave(provider, value, Extensions.Bmp);
// Draw identical shapes over the bounded and compare to ensure changes are constrained.
image.Fill(NamedColors<TPixel>.HotPink, bounds);
source.Fill(NamedColors<TPixel>.HotPink, bounds);
ImageComparer.CheckSimilarity(image, source);
}
}
}
}

57
tests/ImageSharp.Tests/Processors/Filters/BrightnessTest.cs

@ -1,57 +0,0 @@
// <copyright file="BrightnessTest.cs" company="James Jackson-South">
// Copyright (c) James Jackson-South and contributors.
// Licensed under the Apache License, Version 2.0.
// </copyright>
namespace ImageSharp.Tests
{
using System.IO;
using ImageSharp.PixelFormats;
using Xunit;
public class BrightnessTest : FileTestBase
{
public static readonly TheoryData<int> BrightnessValues
= new TheoryData<int>
{
50 ,
-50 ,
};
[Theory]
[MemberData(nameof(BrightnessValues))]
public void ImageShouldApplyBrightnessFilter(int value)
{
string path = this.CreateOutputDirectory("Brightness");
foreach (TestFile file in Files)
{
string filename = file.GetFileName(value);
using (Image<Rgba32> image = file.CreateImage())
using (FileStream output = File.OpenWrite($"{path}/{filename}"))
{
image.Brightness(value).Save(output);
}
}
}
[Theory]
[MemberData(nameof(BrightnessValues))]
public void ImageShouldApplyBrightnessFilterInBox(int value)
{
string path = this.CreateOutputDirectory("Brightness");
foreach (TestFile file in Files)
{
string filename = file.GetFileName(value + "-InBox");
using (Image<Rgba32> image = file.CreateImage())
using (FileStream output = File.OpenWrite($"{path}/{filename}"))
{
image.Brightness(value, new Rectangle(10, 10, image.Width / 2, image.Height / 2)).Save(output);
}
}
}
}
}

56
tests/ImageSharp.Tests/Processors/Filters/ContrastTest.cs

@ -1,56 +0,0 @@
// <copyright file="ContrastTest.cs" company="James Jackson-South">
// Copyright (c) James Jackson-South and contributors.
// Licensed under the Apache License, Version 2.0.
// </copyright>
namespace ImageSharp.Tests
{
using System.IO;
using ImageSharp.PixelFormats;
using Xunit;
public class ContrastTest : FileTestBase
{
public static readonly TheoryData<int> ContrastValues
= new TheoryData<int>
{
50 ,
-50 ,
};
[Theory]
[MemberData(nameof(ContrastValues))]
public void ImageShouldApplyContrastFilter(int value)
{
string path = this.CreateOutputDirectory("Contrast");
foreach (TestFile file in Files)
{
using (Image<Rgba32> image = file.CreateImage())
using (FileStream output = File.OpenWrite($"{path}/{file.FileName}"))
{
image.Contrast(value).Save(output);
}
}
}
[Theory]
[MemberData(nameof(ContrastValues))]
public void ImageShouldApplyContrastFilterInBox(int value)
{
string path = this.CreateOutputDirectory("Contrast");
foreach (TestFile file in Files)
{
string filename = file.GetFileName(value + "-InBox");
using (Image<Rgba32> image = file.CreateImage())
using (FileStream output = File.OpenWrite($"{path}/{filename}"))
{
image.Contrast(value, new Rectangle(10, 10, image.Width / 2, image.Height / 2)).Save(output);
}
}
}
}
}
Loading…
Cancel
Save