2010-01-15 1 views
4

나는 약간의 이미지 정도 ImageMagick를 사용하려고 시도하고 다음 이미지가 올바른 크기로 extented되어중력과 함께 Perl :: Magick의 Extent를 사용할 때 왜 이미지가 중앙에 있지 않습니까?

my $image = Image::Magick->new; 
open(IMAGE, $filename); 
$image->Read(file => \*IMAGE); 
close(IMAGE); 

$image->Extent(gravity => 'Center', width => 150, height => 150,); 

$image->Write($outfile); 

동안, 그것은 중간에 있지 않습니다. 올바르게 사용하고 있습니까?

업데이트 :

$image->Set(Gravity => 'Center'); 

하지만 여전히 좋은 : 나는 또한 다루기 힘든 버전을 사용하여 시도

. 6.5.8-10 버전을 사용하고 있습니다.

2 업데이트 :

PerlMagick의 변경 내역이 발견 : 펄이 작동 이외의 변환으로

2009-10-18 6.5.7-0 Cristy <[email protected]> 
    * Interpret gravity properly for ExtentImage(). 
+0

예제 코드는 이전 버전 (6.5.4.7) 인 Fedora의 Image :: Magick 패키지와 함께 작동합니다. 비교할만한 새로운 것을 만들지 못했습니다. – Porculus

답변

0

은 벌레처럼 보인다.

1
#Ok, you need to extent your image upto 100x100 and fill new area by transparent background: 

($nx, $ny) = $image->Get('base-columns','base-rows'); 
$nnx = 50-$nx/2; 
$nny = 50-$ny/2; 

$image->Extent(geometry=>"100x100-$nnx-$nny", background=>"graya(0%, 0)"); 

#woohoo! 
관련 문제