我正在寻找使用视图将此位图设置为背景的DrawingVisual
位图(在示例中为视觉对象),如下所示:RenderTargetBitmap
Canvas
var bmp = new RenderTargetBitmap(2000, 50, 120, 96, PixelFormats.Indexed2);
bmp.Render(visual);
var brush = new ImageBrush(bmp) { Stretch = Stretch.Fill };
Canvas.Background = brush;
当PixelFormats.Default
用作 的最后一个参数时RenderTargetBitmap
,图像按预期呈现。但是,当我选择PixelFormats.Indexed2
(或任何.PixelFormats.IndexedX
bmp.Render
Canvas
如何使用IndexedX
像素格式RenderTargetBitmap
?还是有其他方法可以减少图像的内存占用?它只使用三种颜色,因此使用调色板而不是 32 位 RGB 似乎是可行的方法。