在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.
当允许用户调整现代12MP或更高版本相机的图像时,我的内存不足。 甚至一些尺寸仅为900kb的图片占用了更多的内存空间,因为它基于像素大小(我认为)所以... p>
我有一个1和1的SSH访问权限。 1个共享服务器,我按照他们的指示上传imagemagick并将其配置/制作/安装到我服务器上的目录中。 现在我需要在php中做什么来做同样的事情 p>
$ originalImage = imagecreatefromjpeg($ src);
$ finalImage = imagecreatetruecolor($ newWidth,$ newHeight );
imagecopyresampled($ finalImage,$ originalImage,0,0,0,0,$ newWidth,$ newHeight,$ originalWidth,$ originalHeight);
imagejpeg($ finalImage,$ saveDest,$ jpeg_quality);
code > pre>
变量有望自我解释。 我试图通过安装imagick扩展程序找到我的方式,但是当我读到PECL和PEAR时我真的迷失了,我真的不想搞砸了工作的php安装。 p>
div>
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.
Update php.ini
file:
memory_limit = 2048M