gpt4 book ai didi

c# - WinForms:BackgroundImage 嵌入为位图?

转载 作者:行者123 更新时间:2023-11-30 17:15:04 24 4
gpt4 key购买 nike

我最近从业务应用程序编程转向尝试(作为一种爱好)在 .NET (C#) 中创建纸牌游戏实现。当然,我遇到了一些差异,其中之一是游戏应用程序的图形特性。

本能地,我将所有用作窗体和控件背景的图像保存为 jpeg,然后再将它们设置为项目中的属性。然后我开始怀疑它们是否以位图的形式嵌入,也许我最好还是将它们保留为 .bmp 文件。在发帖之前,我试图找到这个问题的答案,但没有任何快乐。

在设计时设置 BackgroundImage 属性时,使用 jpg 文件比使用 bmp 文件有明显的好处吗?对于在运行时加载的图像,无论出于何种原因作为单独文件存在的应用程序附带的图像(可能在资源文件夹中),我可以看到好处,但我不确定前者。

如有任何见解,我们将不胜感激。

最佳答案

重要的是在设置背景时为图像使用预先计算的位图,以提高性能。

private Bitmap renderBmp;
public override Image BackgroundImage
{
set
{
Image baseImage = value;
renderBmp = new Bitmap(Width, Height,
System.Drawing.Imaging.PixelFormat.Format32bppPArgb);
Graphics g = Graphics.FromImage(renderBmp);
g.DrawImage(baseImage, 0, 0, Width, Height);
g.Dispose();
}
get
{
return renderBmp;
}
}

代码示例已从 this post 中提取,这解释了其他提高绘制背景图像性能的技术。

希望对您有所帮助。

关于c# - WinForms:BackgroundImage 嵌入为位图?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8227202/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com