Как сохранить изображение в формате jpg или png с помощью API изменения размера timthumb.php - PullRequest
3 голосов
/ 12 декабря 2011

Я использую популярный 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 по умолчанию ... любезно помогите

Ответы [ 3 ]

1 голос
/ 16 августа 2012

Timthumb не имеет опции «сохранить как» (см. Этот ответ http://o7.no/biJTYD в блоге разработчика http://www.binarymoon.co.uk/2010/11/timthumb-hints-tips/). Timthumbs сохраняет обработанное изображение в том же формате, что и исходное изображение.

Мне удалось принудительно "сохранить как jpg", когда источником является "png", со следующей работой вокруг (около строки 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); 
0 голосов
/ 13 января 2012

я просто использую timthumb.php с этого URL http://timthumb.googlecode.com/svn/trunk/timthumb.php и когда я нажимаю «Сохранить как», имя файла по умолчанию «Imagename.php.jpeg». и может изменить имя до ".jpeg". может это тебе поможет.

Я использую Firefox в Ubuntu 10.4.

1007 * наслаждаться *

0 голосов
/ 12 декабря 2011

Не проверено, но вы можете добавить дополнительный заголовок к строке 1195 в:

 header('Content-Length: ' . filesize($file));
 header('Content-Disposition: attachment; filename="' . basename($file) . '";'); 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...