2010-12-05 2 views
0
Image::Magick 

system("convert $imageurl $new"); 
system("convert $new -geometry 480x360 -blur .8 -quality 100 $new"); 

иPerl - Как изменить размер и аннотировать изображение с помощью Image :: Magick с системным вызовом?

system("convert $imageurl $new"); 
system("convert $new -resize 480x360 -blur .8 -quality 100 $new"); 

Оба выше работают хорошо, но я не вижу видимых различий между геометрией и изменять размеры. Прочитайте это, над моей головой, это работает так, я узнаю, как я иду сюда.

Для аннотирования, ниже работает отлично:

my $image; 
my $test_text="testies123"; 
$image=Image::Magick->new; 
my $x=$image->Read(filename=>"$new"); 
$x=$image->Annotate(text=>"$test_text",font=>'Candice.ttf',fill=>'#5BADFF',pointsize=>'14',gravity=>'SouthEast', x=>5, y=>5); 
$x=$image->Write(filename=>'new_file.jpg'); undef $image; 

(В $ вары в приведенных выше примерах были явно объявлены ранее.)

То, что я пытаюсь сделать, это объединить все это в один короче обычного ,

Как:

system("convert $new -geometry 480x360 -blur .8 -quality 100 -annotate -text testies123 -font Candice -fill blue -pointsize 14 -gravity SouthEast -x 5 -y 5 $new"); 

Я попробовал несколько вариантов выше, а также просто попытка аннотирования с помощью системы(), но я просто не могу понять это.

Возможно, есть еще лучший способ все вместе? Заранее благодарим за то, что эта старая собака получила еще один трюк.

+0

(1) зачем вам нужен более короткий рутина, и (2), почему бы просто не использовать изображения :: Magick, чтобы сделать преобразование, а также как аннотирование, а не инструменты командной строки? – MkV 2010-12-05 17:50:47

ответ

Смежные вопросы