mirror of
https://github.com/DarthAffe/HPPH.git
synced 2025-12-12 13:28:37 +00:00
52 lines
1.4 KiB
C#
52 lines
1.4 KiB
C#
using HPPH.SkiaSharp;
|
|
using SkiaSharp;
|
|
|
|
namespace HPPH.Test.Skia;
|
|
|
|
[TestClass]
|
|
public class SkiaTests
|
|
{
|
|
private static IEnumerable<string> GetTestImages() => Directory.EnumerateFiles(@"..\..\..\..\sample_data", "*.png", SearchOption.AllDirectories);
|
|
|
|
[TestMethod]
|
|
public void ImageConversion24Bit()
|
|
{
|
|
Image<ColorRGB> image = TestDataHelper.CreateTestImage<ColorRGB>(1920, 1080);
|
|
using SKImage bitmap = image.ToSKImage();
|
|
IImage image2 = bitmap.ToImage();
|
|
|
|
Assert.AreEqual(IColorFormat.BGRA, image2.ColorFormat);
|
|
|
|
image2 = image2.ConvertTo<ColorRGB>();
|
|
|
|
Assert.AreEqual(image, image2);
|
|
}
|
|
|
|
[TestMethod]
|
|
public void ImageConversion32Bit()
|
|
{
|
|
Image<ColorRGBA> image = TestDataHelper.CreateTestImage<ColorRGBA>(1920, 1080);
|
|
using SKImage bitmap = image.ToSKImage();
|
|
IImage image2 = bitmap.ToImage();
|
|
|
|
Assert.AreEqual(IColorFormat.BGRA, image2.ColorFormat);
|
|
|
|
image2 = image2.ConvertTo<ColorRGBA>();
|
|
|
|
Assert.AreEqual(image, image2);
|
|
}
|
|
|
|
[TestMethod]
|
|
public void LoadFileToPngLoadStream()
|
|
{
|
|
foreach (string image in GetTestImages())
|
|
{
|
|
IImage img = SkiaSharp.ImageHelper.LoadImage(image);
|
|
byte[] png = img.ToPng();
|
|
using MemoryStream ms = new(png);
|
|
IImage img2 = SkiaSharp.ImageHelper.LoadImage(ms);
|
|
|
|
Assert.AreEqual(img, img2);
|
|
}
|
|
}
|
|
} |