ImageMagick : 일부 페이지 후 변환 종료


16

convert를 사용하여 일부 jpg를 하나의 pdf로 변환하려고합니다.

* .jpg로 변환 new.pdf

그러나 변환은 18 페이지 후에 종료됩니다. 그런 다음 출력은 정상이지만 완료되지 않았습니다.

convert-im6.q16: DistributedPixelCache '127.0.0.1' @ error/distribute-cache.c/ConnectPixelCacheServer/244.
convert-im6.q16: cache resources exhausted `094708.JPG' @ error/cache.c/OpenPixelCache/3945.
...

제한 설정을 시도했지만 성공하지 못했습니다. 다른 jpg를 시도하면 동일한 결과입니다.

어떤 아이디어? 여유 메모리가 충분합니다.

Version: ImageMagick 6.9.7-4 Q16 x86_64 20170114 
...
Delegates (built-in): bzlib djvu fftw fontconfig freetype jbig jng jp2 jpeg lcms lqr ltdl lzma openexr pangocairo png tiff wmf x xml zlib

최신 버전을 사용할 수있는 것 같습니다. 사이트를 확인하고 해당되는 경우 다운로드 및 업데이트하면됩니다. 버그 인 경우 최신 버전으로 패치 될 수 있습니다. 아마도 적어도 고려해야 할 것. imagemagick.org/script/download.php
Pimp Juice IT

2
-limit스위치를 확인하십시오 .... imagemagick.org/script/command-line-options.php#limit-limit memory <#> 모든 파일을 처리하기위한 메모리가 부족한 경우이 스위치를 사용할 수 있습니다 . 그렇지 않으면 작은 배치보다 적은 병합을 시도하여 차이가 있는지 확인하십시오. 따라서 백이 있으면 테스트 폴더에 25를 복사하고 예를 들어 25와 동일한 지 확인하십시오. 아마도 그것들을 모두 더 작은 청크로 병합 한 다음 마지막에 함께 생성 된 PDF 문서를 병합 할 수 있습니다. 그래도 항상 PDF 파일 병합에 PDFTK를 사용했습니다.
Pimp Juice IT

답변:


24

캐시를 늘리려면 다음 옵션을 추가하십시오

convert -limit memory 1GiB -limit disk 1GiB *.jpg new.pdf

작동하지 않으면 이미지 매직 구성 파일에 제한을 설정하십시오./etc/ImageMagick-6/policy.xml

<policy domain="resource" name="memory" value="256MiB"/>
<policy domain="resource" name="disk" value="1GiB"/>

<policy domain="resource" name="memory" value="3GB"/>
<policy domain="resource" name="disk" value="2GB"/>

다시 해봐


변경 사항 policy.xml은 명령 행 옵션과 동일하지만 영구적입니다. "쓰기 및 잊기"때문에 거의 항상 좋은 생각입니다.
tanius

5
@tanius xml 편집은 효과가 있었지만 CLI 옵션은 효과가 없었습니다. Ubuntu 18.10, ImageMagick 6.9.10-8, 다음 이미지 포함 : github.com/cirosantilli/media/blob/master/…
Ciro Santilli 新疆 改造 中心 法轮功 六四 事件

Ciro 보고서와 마찬가지로 cli는 작동하지 않았으며 xml은 작동하지 않았습니다. 버전 : ImageMagick이 6.9.7-4 Q16 데비안 (9)에 20,170,114을 X86_64
루이스 ANTOLIN 카노

github.com/ImageMagick/ImageMagick/issues/…에 따르면 XML의 보안 정책이 명령 줄 옵션보다 우선합니다.
jamadagni
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.