我正在使用 ImageMagick 將以下 PDF 轉換為 PNG 檔案:
但是當轉換時
convert "file.pdf" "/tmp/file.png"
生成的影像解析度極低:

添加密度和調整大小資訊時,我得到了一些更大的影像,但仍然不是存盤在 PDF 中的原始解析度(當然不是 300 DPI)
convert -density "300" -resize "3000x3000>" "file.pdf" "/tmp/file.png"

使用 Poppler-Utils'pdfimages時,我得到了適當的影像:

我的問題是:有沒有辦法告訴 ImageMagick 以“正確”的解析度提取影像(存盤在 PDF 檔案中)?換句話說,忽略正確查看 PDF 所需的縮放,從而提取正確的影像解析度?
我在 Alpine Linux docker 映像中使用 ImageMagick 7.1.0.16 和 Ghostscript 9.55.0。
uj5u.com熱心網友回復:
您所擁有的非常不尋常的結構經歷了許多變化,但我們可以猜測某些頁面可能已轉換為 300 dpi 或 600 dpi,因為它們都以大致相同的大小呈現。
請注意,圖形 dpi 是主觀的,它不是在 PDF 中使用的值,而是與圖形作業 dpi 相關的默認 72 點單位的像素。影像可能是 75 dpi,但以每 72 點 300 像素存盤。
第一次分析說影像是
- image-0028 = 714 X 900 點,標稱 600 dpi
- image-0002 = 726 X 900 點,標稱 600 dpi
- image-0005 = 674 x 900 點,標稱 600 dpi
- image-0008 = 674 x 900 點,標稱 600 dpi
- image-0011 = 674 x 900 點,標稱 600 dpi
- image-0014 = 674 x 900 點,標稱 600 dpi
但所有都被下采樣到各種大小約。1.2" x 1.5" 因此與所有這些減少相匹配的合理源尺寸可能是 9.6" x 12" 并進行一些裁剪。
因此,要獲得最接近的原始質量提取頁面@ 600 dpi(無損 png 最好保留那些有損 jpeg 缺陷)
然后將它們重新轉換為 75 dpi 應該為您提供最接近質量差的輸入。
uj5u.com熱心網友回復:
在讀取 Imagemagick 中的輸入后,您需要將密度增加得更大并調整大小。
這將是 5800 × 7200 像素:
convert -density 4800 IMSLP358086-PMLP578359-Ehr_OP_20_5.pdf[1] x.png

這將是 2417 × 3000 像素:
convert -density 4800 IMSLP358086-PMLP578359-Ehr_OP_20_5.pdf[1] -resize "3000x3000>" y.png

轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/452243.html
標籤:pdf 图像魔术师 imagemagick 转换
