使用 ImageSharp 将包含 Bgra32 的传入缓冲区转换为 ImageSharp Image 图像的最佳方法是什么<Rgba24>?



我从UAP和WPF获得PixelFormats.Bgra32图像,我想知道将它们转换到SixLabors和从SixLabor转换它们的最快方法。ImageSharpImage<Rgba32>图像。有什么魔力吗;突变";它可以在我使用TryGetSinglePixelSpan复制缓冲区后翻转像素字节?

没有更改现有图像的快捷方式,但您可以使用第一个图像所需的像素格式创建一个新图像。

Image<Rgba32> rgba;
// Load decodes
// LoadPixelData copies
// WrapMemory wraps
using (Image<Bgra32> bgra = Image.LoadPixelData<Bgra32>(...))
{
rgba = bgra.CloneAs<Rgba32>(bgra.GetConfiguration());
}

然后,您可以对Rgba32图像执行任何需要的操作。

最新更新