iMagick - PNG的DPI

时间:2013-04-30 09:50:21

标签: php imagemagick png

我有PNG我保存为300DPI

当我使用iMagick时,使用getImageResolution()

时返回118.11 DPI

任何想法我可能做错了什么?

由于

2 个答案:

答案 0 :(得分:2)

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

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

答案 1 :(得分:-1)

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

请同时查看How to find pixels per inch (PPI) using ImageMagick,其中概述了以下公式来转换这些值:

const INCH_PER_CENTIMETER = 2.54; 

$ppi = (int) round($ppcm * INCH_PER_CENTIMETER);