HasBackgroundColor
PngImage.HasBackgroundColor property
获取一个值,表示是否有背景色。
public override bool HasBackgroundColor { get; set; }
例子
以下示例显示如何为不支持 Alpha 通道的 TrueColor PNG 图像的一部分设置完全透明的颜色。
[C#]
Aspose.Imaging.ImageOptions.PngOptions createOptions = new Aspose.Imaging.ImageOptions.PngOptions();
createOptions.Source = new Aspose.Imaging.Sources.FileCreateSource("c:\\temp\\transparent.png", false);
createOptions.ColorType = Aspose.Imaging.FileFormats.Png.PngColorType.Truecolor;
// 创建一个 100x100 像素的 TrueColor PNG 图像。
using (Aspose.Imaging.Image image = Image.Create(createOptions, 100, 100))
{
Aspose.Imaging.FileFormats.Png.PngImage pngImage = (Aspose.Imaging.FileFormats.Png.PngImage)image;
Aspose.Imaging.Graphics gr = new Aspose.Imaging.Graphics(pngImage);
// 所有红色像素都将被视为完全透明。
pngImage.TransparentColor = Aspose.Imaging.Color.Red;
pngImage.HasTransparentColor = true;
// 所有透明像素都有背景颜色。
pngImage.BackgroundColor = Aspose.Imaging.Color.Green;
pngImage.HasBackgroundColor = true;
// 用白色填充整个图像。
gr.FillRectangle(new Aspose.Imaging.Brushes.SolidBrush(Aspose.Imaging.Color.White), pngImage.Bounds);
// 用透明颜色填充图像的左上角。
// 这使得左上角的四分之一以背景颜色着色。
Rectangle rect = new Rectangle(0, 0, pngImage.Width / 2, pngImage.Height / 2);
gr.FillRectangle(new Aspose.Imaging.Brushes.SolidBrush(Aspose.Imaging.Color.Red), rect);
pngImage.Save();
}
也可以看看
- class PngImage
- 命名空间 Aspose.Imaging.FileFormats.Png
- 部件 Aspose.Imaging