Php 将原始图像转换为JPEG(尝试使用)ImageMagick
我不在乎将原始图像转换为JPEG的解决方案是否使用ImageMagick,它似乎是最难理解的,所以我从这里开始。 我成功地将JPEG转换为不同大小的JPEG,但无法将原始图像转换为JPEG。查看后,我尝试了以下代码:Php 将原始图像转换为JPEG(尝试使用)ImageMagick,php,image,imagemagick,Php,Image,Imagemagick,我不在乎将原始图像转换为JPEG的解决方案是否使用ImageMagick,它似乎是最难理解的,所以我从这里开始。 我成功地将JPEG转换为不同大小的JPEG,但无法将原始图像转换为JPEG。查看后,我尝试了以下代码: try { $im = new Imagick($inputURL); $im->setimageformat("jpg"); $im->writeimage($outputURL); $im->clear(); $im-&
try {
$im = new Imagick($inputURL);
$im->setimageformat("jpg");
$im->writeimage($outputURL);
$im->clear();
$im->destroy();
} catch (Exception $e) {
echo $e;
}
并收到此错误:
exception 'ImagickException' with message 'unable to open image `/tmp/magick-XXaana6Q.ppm': No such file or directory @ blob.c/OpenBlob/2480' in /UPSTREAM/public_html/core/functions.php:116 Stack trace: #0 /UPSTREAM/public_html/core/functions.php(116): Imagick->__construct('/UPSTREAM/p...') #1 /UPSTREAM/public_html/core/functions.php(129): resizeImage('/UPSTREAM/p...', '/UPSTREAM/p...', Array) #2 {main}
然后我试着:
exec("/usr/bin/convert -define jpeg:size=1280x720 {$inputURL} {$outputURL}");
基于底部附近的同一帖子,但它不生成任何文件
然后我试过了,但我也没能用上那个代码。然后我修改了它,但没有结果(编辑:我得到了一个与上面类似的错误):
对于踢腿,我尝试过以下几种方法:
//echo "/usr/bin/convert {$inputURL} -resize {$dimensions[0]}x{$dimensions[1]} {$outputURL}";
#phpinfo();
#exec("/usr/bin/convert {$inputURL} -resize {$dimensions[0]}x{$dimensions[1]} {$outputURL}");
#exec("/usr/bin/convert {$inputURL} -define {$dimensions[0]}x{$dimensions[1]} {$outputURL}");
#exec("/usr/bin/convert -resize {$dimensions[0]}x{$dimensions[1]} rgb:{$inputURL} {$outputURL}");
#exec("/usr/bin/convert -define jpeg:size=1280x720 {$inputURL} {$outputURL}");
(可能)相关详细信息:
- 我使用WebHostingHub作为主机,因此
与/usr/bin/convert
相当convert
- (编辑)我使用的是索尼相机,因此我的所有原始文件都将包含
扩展名.ARW
//echo "/usr/bin/convert {$inputURL} -resize {$dimensions[0]}x{$dimensions[1]} {$outputURL}";
#phpinfo();
#exec("/usr/bin/convert {$inputURL} -resize {$dimensions[0]}x{$dimensions[1]} {$outputURL}");
#exec("/usr/bin/convert {$inputURL} -define {$dimensions[0]}x{$dimensions[1]} {$outputURL}");
#exec("/usr/bin/convert -resize {$dimensions[0]}x{$dimensions[1]} rgb:{$inputURL} {$outputURL}");
#exec("/usr/bin/convert -define jpeg:size=1280x720 {$inputURL} {$outputURL}");