【发布时间】:2015-07-21 15:03:18
【问题描述】:
目前,我们通过将图像转换为Bitmap 并检查height/width 并检查PixelFormat 的类型System.Drawing.Imaging.PixelFormat.Format1bppIndexed 来确定图像的大小以及是否包含颜色检测颜色。
但我注意到,单步执行代码时,仅初始化此 Bitmap 可能需要 3-5 秒(至少对于非常高分辨率的 TIF 图像):
ms = new MemoryStream(fileBytes);
bitmap = new System.Drawing.Bitmap(ms);
有没有一种更快的方法可以直接从字节数组中检查这两件事,这样我就可以避免 Bitmap 类的缓慢,或者这只是大型 TIF 图像的预期结果?
【问题讨论】:
-
大概您可以深入研究
tiff文件格式并弄清楚如何读取标题并仅提取您需要的信息。 -
感谢您的回复 - 我也想过这个问题,但我远不是成像专家,甚至不知道从哪里开始。
-
我绝不是专家,但看起来here 看起来就像任何开始的地方一样好。看起来您需要阅读标题,它将告诉您在哪里可以找到“图像文件目录”,并且应该包含具有大小和颜色深度的标签。
-
谢谢 - 我会调查的!