这可能看起来像一个奇怪的问题,我不知道图像的格式,所以我会继续问…
我正在制作一个使用按钮网格的扫雷游戏(与不同的东西相关),然后我使用backgroundImage向按钮添加一个精灵.如果网格是9×9,那很好. 15×15它减慢速度和30×30你可以看到每个按钮被加载.
这引出了我的问题:哪种图像格式最快加载?显然,文件大小是加载速度的一部分,但是,我正在询问是否,例如,jpeg – 与gif相同的文件大小 – 将加载更快.或bmp,png等
我问这是为了看看我是否可以使用不同的格式更快地加载网格.
谢谢!
您想要一种绘画速度更快的图像格式.只有一个,其像素格式直接与视频适配器的设置匹配,因此可以直接复制像素数据而无需格式调整.
在大多数现代机器上,那就是PixelFormat.Format32bppPArgb.它比其他所有的快十倍.
从资源或文件加载图像时,您将无法获得该格式,您必须使用create it.
请注意,如果网格中的每个单元格都是一个控件,这仍然不会给你恒星的绘画速度.特别是如果它是一个按钮,它们的绘制非常昂贵,因为它们支持透明效果.如果您在一个Paint事件处理程序中绘制整个网格,那么您只能在这里获得优势.就像表格一样.
一种完全不同的方法是用this hack掩盖可见的延迟.