1
0
mirror of https://github.com/aelurum/AssetStudio.git synced 2025-09-17 18:24:18 -04:00
Files
AssetStudio/AssetStudioUtility/ImageExtensions.cs
2021-06-27 07:33:20 +08:00

40 lines
1.2 KiB
C#

using SixLabors.ImageSharp;
using SixLabors.ImageSharp.Formats.Bmp;
using SixLabors.ImageSharp.Formats.Tga;
using System.IO;
namespace AssetStudio
{
public static class ImageExtensions
{
public static MemoryStream ConvertToStream(this Image image, ImageFormat imageFormat)
{
var outputStream = new MemoryStream();
switch (imageFormat)
{
case ImageFormat.Jpeg:
image.SaveAsJpeg(outputStream);
break;
case ImageFormat.Png:
image.SaveAsPng(outputStream);
break;
case ImageFormat.Bmp:
image.Save(outputStream, new BmpEncoder
{
BitsPerPixel = BmpBitsPerPixel.Pixel32,
SupportTransparency = true
});
break;
case ImageFormat.Tga:
image.Save(outputStream, new TgaEncoder
{
BitsPerPixel = TgaBitsPerPixel.Pixel32,
Compression = TgaCompression.None
});
break;
}
return outputStream;
}
}
}