我正在使用热门timthumb.php来调整图片大小。我成功地能够改变图像的高度和宽度,但每当我默认“保存为”时它会保存为php ..
例如,如果您尝试保存当前存在的图像 http://www.binarymoon.co.uk/demo/timthumb-basic/timthumb.php?src=castle1.jpg&w=400它保存为扩展名为php的文件..
我如何强制将其保存为png / jpg?我知道mime类型是image / jpg或image / png ....所有我想要的是默认情况下图像应保存为png或jpg ...请帮助
答案 0 :(得分:1)
Timthumb没有“另存为”选项(请参阅开发者博客http://o7.no/biJTYD上的此回复http://www.binarymoon.co.uk/2010/11/timthumb-hints-tips/)。 Timthumbs使用与源图像相同的格式保存处理过的图像。
当源是“png”时,我成功地强制了“另存为jpg”(附近的第742行)。您可以安排在if-then-else链上进行其他转换。
if(preg_match('/^image\/(?:jpg|jpeg)$/i', $mimeType)){
$imgType = 'jpg';
imagejpeg($canvas, $tempfile, $quality);
} else if(preg_match('/^image\/png$/i', $mimeType)){
// ***************WORKAROUND STARTS HERE****************
//$imgType = 'png';
//imagepng($canvas, $tempfile, floor($quality * 0.09));
$imgType = 'jpg';
imagejpeg($canvas, $tempfile, $quality);
答案 1 :(得分:0)
未经测试,但您可以在第1195行添加额外标题:
header('Content-Length: ' . filesize($file));
header('Content-Disposition: attachment; filename="' . basename($file) . '";');
答案 2 :(得分:0)
我只是使用此网址http://timthumb.googlecode.com/svn/trunk/timthumb.php中的timthumb.php 当我点击另存为时,默认文件名是“Imagename.php.jpeg”。并且能够在“.jpeg”之前更改名称。这可以帮到你。
我在ubuntu 10.4上使用Firefox。
享受