我遇到了Imagick的问题 - PHP。 我有这段代码:
function createImages ($src, $dst, $width, $height)
{
$image = new Imagick($src);
$image->stripImage();
$color = new ImagickPixel();
$color->setColor('rgb(255,255,255)');
if(resizeimage($image, $width, $height)) {
$image->borderimage($color,
intval(($width - $image->getimagewidth()) / 2),
intval(($height - $image->getimageheight()) / 2));
$image1 = new Imagick();
$image1->newImage($width, $height, new ImagickPixel('white'));
$image1->setImageColorspace($image->getImageColorspace());
$image1->compositeImage($image, $image1->getImageCompose(), 0, 0);
$image1->setImageCompressionQuality(90);
$image1->setimagecompression(Imagick::COMPRESSION_JPEG);
$image1->setformat('jpeg');
$fileHandle = fopen($dst, "w");
$image1->writeImageFile($fileHandle);
$color->destroy();
$image1->destroy();
}
$image->destroy();
return true;
}
这个错误:
致命错误:调用未定义的方法Imagick :: writeImageFile()
我不明白为什么所有其他方法都运行良好,但不是writeImageFile()。你能帮帮我吗?
答案 0 :(得分:1)
writeImageFile 功能在ImageMagick版本6.3.6中可用,所以也许你的版本不够新?还有 writeImage ,在您的案例中可能是一个可用的替代方案:http://www.php.net/manual/en/imagick.writeimage.php