PHP:使用imagick更改图像的DPI?

PHP:使用imagick更改图像的DPI?,php,Php,我正试图找出如何使用PHP和imagic增加图像DPI 但是,每次我使用以下代码时,我的页面都会返回一个500错误 代码如下: $im = new Imagick(); $im->setImageUnits(imagick::RESOLUTION_PIXELSPERINCH); $im->setImageResolution(300,300); $im->readImage("test.png"); $im->setImageFormat("png"); header("

我正试图找出如何使用PHP和imagic增加图像DPI

但是,每次我使用以下代码时,我的页面都会返回一个500错误

代码如下:

$im = new Imagick();
$im->setImageUnits(imagick::RESOLUTION_PIXELSPERINCH);
$im->setImageResolution(300,300);
$im->readImage("test.png");
$im->setImageFormat("png");
header("Content-Type: image/png");
echo $im;
我知道image magic是在使用VPS时安装的,我还尝试了以下代码,效果很好:

<?php
exec("/usr/bin/convert bb9yuui70.png -bordercolor black -border 10x10 bb9yuui70.png");
?>
<img src="bb9yuui70.png">

有什么我遗漏的吗?我对imagic的世界很陌生


如有任何帮助,将不胜感激。

500服务器错误→ 查看Web服务器错误日志1,您将看到:

致命错误:找不到类“Imagick”

致命错误:未捕获异常“ImagickException”,消息为“无法处理空的Imagick对象”

如果看到第一个错误,则必须安装php模块(仅安装
imagemagick
是不够的)

但是,同样在安装了
Imagick
的情况下,您的代码也会失败,因为您必须先加载图像,然后设置单位、分辨率等

$im = new Imagick();
$im->readImage("test.png");                                   # <--------
$im->setImageUnits(imagick::RESOLUTION_PIXELSPERINCH);
$im->setImageResolution(300,300);
$im->setImageFormat("png");
header("Content-Type: image/png");
echo $im;
$im=new Imagick();
$im->readImage(“test.png”)#setImageUnits(图像:分辨率为像素像素像素);
$im->setImageResolution(300300);
$im->setImageFormat(“png”);
标题(“内容类型:图像/png”);
echo$im;

1实际上,上述两个错误也可以在不查看Web服务器日志文件的情况下显示:下一次,放置
ini\u集('display\u errors',1);错误报告(E_全部)位于脚本顶部,您将直接在页面上看到大多数错误(然后在生产中删除)