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