我正在构建一个Web应用程序,它将处理最终将被打印的大型格式的图像文件.
作为其中的一部分,我需要获取(即读取)并设置(即更改)图像文件的DPI.
这是可能通过PHP GD或PHP Imagick吗?
谢谢,
BK
编辑:
可以通过iMagick的getimageResolution方法访问图像的DPI:
public function getDPI() { $imgDPI = $this->image->getimageResolution(); return $imgDPI; }
并且可以通过iMagick的setimageResolution方法设置图像的DPI:
public function setDPI($DPIX,$DPIY) { $this->image->setimageResolution($DPIX,$DPIY); }
在像GD输出的原始位图格式中,dpi设置只是处理应用程序可以用于将像素大小转换为物理单位的元信息.
据我所知,在GD中直接操纵元数据是不可能的.你必须使用一个外部库.
也就是说,我不认为这是真的有必要.只需生成所需像素尺寸的图像(像素数是真正相关的信息!),并告诉打印过程要使用什么dpi设置.