【问题标题】:php imagick setCompressionQuality and compositeImagephp imagick setCompressionQuality 和compositeImage
【发布时间】:2012-05-10 00:45:00
【问题描述】:

在将两张图片(一张图片和一张背景)拼接在一起时,我遇到了获取压缩效果的问题。通常的想法是制作最终图像,而首先,主图像不会丢失其质量,但背景会丢失(实际上是压缩的)。

<?
        /* --- */
        $imageOutput = new Imagick();
        $image = new Imagick( $orginalPath );
        $wathermark = new Imagick( $watherMarkFile );

        // I'm compressing background image     
        $image->setImageCompression(imagick::COMPRESSION_JPEG );
        $image->setimagecompressionquality( 20 );
        $image->flattenimages();            

        // We're creating an image wich contains compressed background
        $imageOutput->newImage($image->getimagewidth(), $image->getimageheight(), new ImagickPixel('white') );
        $imageOutput->compositeimage($image, Imagick::COMPOSITE_DEFAULT, 0, 0);
        $imageOutput->setImageFormat('jpeg');

        // And we are composing them
        $imageOutput->compositeImage(   $wathermark, Imagick::COMPOSITE_OVERLAY, 10,10)

        $data = $imageOutput->getimageblob();

        /.... output..../
?>

有没有人知道如何在不保存包含背景的压缩文件的情况下做到这一点。

请原谅我的英语并感谢您的任何回复。 帕韦拉

【问题讨论】:

    标签: php image merge compression imagick


    【解决方案1】:

    如果你添加:

    $imageOutput->setImageCompression(imagick::COMPRESSION_JPEG );
    $imageOutput->setimagecompressionquality( 100 );
    

    【讨论】:

      猜你喜欢
      • 2012-08-08
      • 2018-03-08
      • 2013-12-08
      • 2010-10-17
      • 2018-05-04
      • 2015-05-09
      • 2014-07-07
      • 1970-01-01
      • 2014-11-21
      相关资源
      最近更新 更多