2012-05-15 3 views
0

Привет я создаю эскиз, используя ImageMagick следующей командыImage Magick создать миниатюру

convert -define jpeg:size=".$this->info[0]."x".$this->info[1]." testi/".$this->filename." -auto-orient -thumbnail 200x200 -unsharp 0x.5 testi/".$this->filename 

, но эта команда работает только для jpack входного файла.

Может ли кто-нибудь сказать мне команду для любого типа файла? например, если gif, то выход shuld gif?

ответ

2

Что такое jpack файл?

-define будет работать только для файлов jpg, но я думал, что если выходной файл не был jpg, он был бы проигнорирован; попробуйте удалить это.

Выходной файл должен совпадать с именем входного файла.

Попробуйте написать свой код так, чтобы вы могли видеть, что такое команда actualy; вы можете прокомментировать эхо, когда он работает.

$cmd = "-define jpeg:size={$this->info[0]}x{$this->info[1]} testi/{$this->filename} -auto-orient -thumbnail 200x200 -unsharp 0x.5 testi/{$this->filename}"; 
echo $cmd; 
exec("convert $cmd"); 

Я немного потерял бизнес «$ this->», поэтому код может работать не так, как написано. Я стараюсь, чтобы все было в моих командах, и поместил бы имена файлов и т. Д. В переменную вне команды Imagemagick.

3

Вот код:

<?php 
// read page 1 
$im = new imagick('test.pdf'); 

// convert to jpg 
$im->setImageColorspace(255); 
$im->setCompression(Imagick::COMPRESSION_JPEG); 
$im->setCompressionQuality(60); 
$im->setImageFormat('jpeg'); 

//resize 
$im->resizeImage(290, 375, imagick::FILTER_LANCZOS, 1); 

//write image on server 
$im->writeImage('thumb1.jpg'); 
$im->clear(); 
$im->destroy(); 
?> 
+0

Это код Imagick, и OP не использует это. – Bonzo