Memory

ImageMagick 的 convert 實用程序在 PDF 輸入時佔用太多記憶體

  • January 12, 2017

我經常使用 ImageMagickconvert進行 *->PNG 轉換,但是當 PDF 超過 50 頁時,會佔用超過convert3 Gib (!!!) 的記憶體。我想它首先載入所有內容。

這是不可接受的。它應該逐頁閱讀PDF,為什麼要一次全部閱讀!

也許有辦法以某種方式對其進行調整?或者有什麼好的替代品?

解決了以下問題:

cat <<EOF > /etc/profile.d/ImageMagick.sh
# Set ImageMagick memory limits: it eats too much
export MAGICK_MEMORY_LIMIT=1024 # Use up to *MB of memory before doing mmap
export MAGICK_MAP_LIMIT=1024    # Use up to *MB mmaps before caching to disk
export MAGICK_AREA_LIMIT=4096   # Use up to *MB disk space before failure
export MAGICK_FILES_LIMIT=1024  # Don't open more than *file handles
EOF

我正在使用以下內容:

convert -limit memory 64 -limit map 128 original.djvu newfile.pdf

我的主驅動器空間有限,所以我在前面添加了一個變數

env MAGICK_TMPDIR=/host/Temp convert -limit memory 64 -limit map 128 original.djvu newfile.pdf

引用自:https://serverfault.com/questions/97340