我想知道 Photoshop 或 Gimp 是否能正确读取具有 16 位值的 ASCII .PGM 文件。
我尝试过,但没有成功,但我不明白为什么这是不可能的。
采取这样的 pgm 文件:
P2
3
3
65535
0
0
0
32767
32767
32767
65535
65535
65535
或者像这样的 ppm 文件:
P5
3
3
65535
0
0
0
32767
32767
32767
65535
65535
65535
为什么它不起作用?
答案1
第一个例子(使用魔法数字 P2)是一张完全有效的图像,我使用 ACDSee 以及几年前用 C# 编写的 PGM 解析器都运行良好。目前我最好的猜测是 Photoshop 和/或 Gimp 没有正确实现 PGM 标准。
以下是您第一个示例所呈现的样子(放大):
您提供的第二个示例是“普通” PGM 格式,该格式更加晦涩难懂并且可能不受支持。
您可以尝试以 PGM 格式的二进制版本保存文件,因为该版本速度更快且使用更广泛 - 也许支持会更好。
巧合的是,如今有比 PGM 更好的图像格式,甚至对于严格的灰度应用程序也是如此。您想使用这种格式有什么特别的原因吗?