Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How can I resize an image to fit area with Image::Magick?

From command line with imagemagick, you can use:

convert dragon.gif -resize 64x64^ -gravity center -extent 64x64 fill_crop_dragon.gif

to resize and then crop an image so that it fills the area as much as possible.

How do I do this from Perl's Image::Magick?

like image 781
Marquis Wang Avatar asked May 21 '09 00:05

Marquis Wang


1 Answers

#!/usr/bin/perl

use strict;
use warnings;

use Image::Magick;

my $image = Image::Magick->new;
$image->read('test.jpg');

$image->Set( Gravity => 'Center' );
$image->Resize( geometry => '64x64' );
$image->Extent( geometry => '64x64' );
$image->Write( 'test-out.jpg' );

See the PerlMagick documentation.

like image 103
Sinan Ünür Avatar answered Sep 24 '22 19:09

Sinan Ünür