我有一个TIFF图像,我希望为该图像的特定帧更改BitmapPalette。
我有以下代码:
var width = image.Frames[0].PixelWidth;
var height = image.Frames[0].PixelHeight;
var dpiX = image.Frames[0].DpiX;
var dpiY = image.Frames[0].DpiY;
var listOfColors = new List<System.Windows.Media.Color>();
for (int i = 0; i < 256; i++)
{
listOfColors.Add(System.Windows.Media.Color.FromRgb((byte)i, (byte)i, (byte)i));
}
var pallet = new BitmapPalette(listOfColors);
newImage = new WriteableBitmap(width, height, dpiX, dpiY, PixelFormats.Indexed8, pallet );这将返回一个白色图像:为什么?我在这里做错了什么?
另外,如果你有任何关于如何将GGR文件解析成BitmapPalette的信息,那就更好了。
发布于 2020-05-03 14:15:01
您只填写了bitmappalette(pallete),而没有填写writeablebitmap inage (newImage)。
位图调色板充当writeablebitmap图像的查找表。
您应该用bitmappalette(palette)的索引填充writeablebitmap图像(newImage)。
https://stackoverflow.com/questions/58914709
复制相似问题