1

我有一个PNG我保存为 300DPI

当我使用iMagick它时,它返回为 118.11 DPIgetImageResolution()

有什么想法我可能做错了吗?

谢谢

4

2 回答 2

2

首先,118.11 正是 300 / 2.54 的结果。由于 1 英寸 = 2.54 厘米,iMagick 似乎报告每厘米点数而不是每英寸点数。因此,您只需将 iMagic 给您的数字乘以 2.54 即可获得原始 DPI。

然而,一般来说,数字光栅图像上的 DPI 没有多大意义,因为它们没有可以以英寸或厘米为单位测量的物理尺寸。当然,您可以在大多数图像格式上设置这些尺寸,并且可能在打印时使用它们,但对于其他任何目的,此信息不会以任何方式影响图像。特别是在电脑屏幕上显示时,设置 DPI 不会有任何效果。

于 2013-04-30T09:55:18.750 回答
0

使用PNG 文件时,您的 Imagick 版本返回每厘米 PPC 像素,而不是每英寸点数 DPI(每英寸像素数 PPI)。但你正在寻找后者。

另请参阅如何使用 ImageMagick 查找每英寸像素 (PPI),其中概述了以下公式来转换这些值:

const INCH_PER_CENTIMETER = 2.54; 

$ppi = (int) round($ppcm * INCH_PER_CENTIMETER);
于 2013-04-30T10:04:10.310 回答