createThumb()方法在apache server上使用localhost。但是,同样的功能不适用于Amazon EC2。这显示了一个错误,
异常'Engine_Exception',消息'Method'createThumb“not supported”in /var/www/justrides/application/modules/Core/Api/Abstract.php:46
服务器中启用了GD库。任何建议请。
答案 0 :(得分:0)
以下是我在亚马逊网站上发现的内容:
function createthumb($name,$filename,$new_w,$new_h){
$system=explode('.',$name);
if (preg_match('/jpg|jpeg/',$system[1])){
$src_img=imagecreatefromjpeg($name);
}
if (preg_match('/png/',$system[1])){
$src_img=imagecreatefrompng($name);
}
$old_x=imageSX($src_img);
$old_y=imageSY($src_img);
if ($old_x > $old_y) {
$thumb_w=$new_w;
$thumb_h=$old_y*($new_h/$old_x);
}
if ($old_x < $old_y) {
$thumb_w=$old_x*($new_w/$old_y);
$thumb_h=$new_h;
}
if ($old_x == $old_y) {
$thumb_w=$new_w;
$thumb_h=$new_h;
}
$dst_img=ImageCreateTrueColor($thumb_w,$thumb_h);
imagecopyresampled($dst_img,$src_img,0,0,0,0,$thumb_w,$thumb_h,$old_x,$old_y);
if (preg_match("/png/",$system[1])){
imagepng($dst_img,$filename);
} else {
imagejpeg($dst_img,$filename);
}
imagedestroy($dst_img);
imagedestroy($src_img);
}
createthumb()函数是一个简单的函数,它接受四个参数:要处理的文件,输出文件名,输出文件的宽度和输出文件的高度。该功能使用了GD图像处理工具,并改编自http://icant.co.uk/articles/phpthumbnails/的Christian Heilmann功能。
这是另一个缩略图库: http://phpthumb.sourceforge.net/