1

我对 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() 却不行。你能帮我吗?

4

1 回答 1

1

writeImageFile函数在 ImageMagick 6.3.6版本中可用,所以也许您的版本不够新?还有writeImage在您的情况下可能是一个可用的替代方案:http ://www.php.net/manual/en/imagick.writeimage.php

于 2013-10-01T16:07:33.517 回答