我在WPF中用红色背景创建了一个Grid。网格包含一个固定大小的透明画布。现在,在尝试将Canvas导出为图像时,我得到的图像为黑色背景。但是当画布中有一些颜色(比如白色或红色)时,我会得到一个合适的图像。任何人都可以告诉我为什么如果Canvas具有透明色,图像会产生黑色背景。
示例:
Grid grid = new Grid();
grid.Background = new SolidColorBrush(Colors.Red);
grid.Width = 500;
grid.Height = 300;
Canvas c = new Canvas();
c.Width = 500;
c.Height = 300;
c.Background = new SolidColorBrush(Colors.Transparent);
c.MouseLeftButtonUp += new MouseButtonEventHandler(c_MouseLeftButtonUp);
grid.Children.Add(c);
LayoutRoot.Children.Add(grid);
在Canvas的MouseEvent处理程序中,我将其保存为jpg图像。
答案 0 :(得分:2)
在Canvas的MouseEvent处理程序中,我将其保存为 jpg 图像。
将其另存为PNG
。这些类型的图像专门用于保存透明背景。