有什么方法可以创建更节省空间/资源的位图吗? 目前我尝试渲染一个文件,大约 800px 高但大约 720000px 宽。 它使我的应用程序崩溃,大概是因为位图的共享内存大小。
我能否更有效地做到这一点,比如直接将其创建为 gif 而不是稍后保存时?
我尝试从真实世界读数中保存一系列直线/矩形,我希望它是每 1/100 秒 1 像素。
最佳答案
您必须记住,您加载到内存中的任何图像,无论是 GIF 或 JPEG 还是磁盘上的任何内容,都将变成 32 位位图,这意味着每个像素四个字节。
这意味着您正在创建的图像将是:
4 bytes * 800 pixels high * 720,000 pixels wide = 2,304,000,000 bytes
您试图创建这么大的图像基本上是在破坏您的内存。
无论您想要完成什么,答案都是平铺和缓存您的图像。
关于c# - 高效处理超宽但不是那么高的位图?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2624187/