2015-01-04 2 views
3

저는 imagemagick을 사용하여 이미지에서 작물을 수행하려고했습니다. 그것은 내가 예상 한 결과를주지 못했습니다. 오류를 찾으려고 자르기 값을 0으로 설정하기로 결정했습니다. 자르기 값이 0이면 이미지가 여전히 잘리고 있습니다.Imagemagick 작물이 작동하지 않습니다.

$img = new Imagick(); 
$img->readImage("{german-grammar.pdf}[17]"); 
$img->trimImage(10); 
$width = $img->getImageWidth(); 
$height= $img->getImageHeight(); 
$img->setImagePage($width,$height, 0, 0); //Solution 
$img->cropImage($width, $height,0,0); //Original Problem lime 
$img->setImagePage(0,0,0,0); 
$img->writeImage($ImagesPath.$ImageName); 

입력은 PDF 파일입니다 : 여기

는 코드입니다.

누군가 내가 잘못하고있는 것을 말해 줄 수 있다면 감사하겠습니다. 분명히 0의 자르기 값은 전혀 자르면 안됩니다.

감사합니다.

Cymro는

+0

끝에'writeImage()'를 사용하지 않은 이유는 무엇입니까? 코드가 작동하지 않는 최소 수준으로 단순화하고 입력 이미지와 결과 출력 이미지의 크기를 줄 수 있습니까? –

+0

마크, 2 개의 이미지를 포함하고 이상한 행동을 일으키는 선을 표시했습니다. writeImage()가 작동하지 않았습니다. 인터넷 검색 후 Imagemagick으로 file_put_contents를 사용하는 방법에 대한 게시물을 읽었으며 정상적으로 작동했습니다. – Cymro

+0

Mark, writeImage()를 다시 시도했습니다. 이번에는 작동했습니다. writeImage()를 표시하도록 위 코드를 업데이트했습니다. – Cymro

답변

2

나는 즉시 trimImage() 후와 cropImage() 전에 이미지를 repage 할 필요가 있다고 생각합니다. 이미지에 을 넣으려면이 큰 이미지의 일부 였음을 잊어 버리고 세상에서 행복과 콘텐츠로 나아가고 싶다면 모양을 바꾼 후 트리밍 및 크기 조정과 같은 이미지를 다시 표시하는 것이 좋습니다. 새로운 모양과 크기로

+0

내 질문의 코드가 제안 된 솔루션을 보여주기 위해 업데이트되었습니다. – Cymro

+0

지역 사회 지향적이고 모든 사람들에게 어떻게 그것이 풀 렸는지 보여주기 위해 잘 했어! –