dongyuan1870 2011-06-02 05:06
浏览 31
已采纳

在1和1主机上使用imagemagick在php中调整图像大小

I am running out of memory when allowing users to resize images of modern day 12MP or higher cameras. Even some pictures that are only 900kb in size take up a lot more room in memory because it's based on pixel size (i think) so ...

I have SSH access to a 1&1 shared server and I followed their instructions to upload imagemagick and configure/make/install it into a directory on my server. Now what do I have to do in php to do the same thing as

$originalImage = imagecreatefromjpeg($src);
$finalImage = imagecreatetruecolor($newWidth,$newHeight);
imagecopyresampled($finalImage, $originalImage, 0, 0, 0, 0, $newWidth, $newHeight, $originalWidth, $originalHeight);
imagejpeg($finalImage,$saveDest,$jpeg_quality);

the variables are hopefully self explanitory. I was trying to find my way through installing the imagick extension but i got really lost when i read about PECL and PEAR and I really don't want to screw up the working php installation somehow.

  • 写回答

2条回答 默认 最新

  • drd94483 2011-06-02 05:19
    关注
    exec('/path/to/your/home/imagemagick/installation/bin/convert '.$src.' -resize '.$newWidth.'x'.$newHeight.' '.$saveDest);
    

    But make sure you have all variables coming from user site escaped. And $saveDest is writable by your webserver.

    Changes are high that you run in to the same memory limit problems, couse apache/php is invoking a script which limits its memory usage to its parent.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?