使用Imagemagick将PDF转换为PNG并保持相同分辨率

3
我有成千上万个PDF文件,每个PDF都有多个页面,且每个PDF的分辨率不同(基于扫描仪使用的不同)。我想将每个PDF的每个页面转换为PNG格式,以便通过Tesseract进行OCR。我使用了Imagemagick进行PNG格式转换,但必须为所有图像传递固定的DPI才能获得良好的可读输出。有没有一种方法可以在转换每个PDF的同时保留该PDF的分辨率?
例如,如果1.PDF的分辨率为622×788,2.pdf的分辨率为792×612,则我希望进行相同分辨率的确切转换,只是格式不同(PNG)。
我现在正在使用的命令是:
convert -monochrome -density 1200 input.pdf -resize 25% -monochrome -white-threshold 50% -black-threshold -50% output.png

谢谢,pashah


1
把以下与编程相关的内容从英语翻译成中文。仅返回翻译后的文本:请添加您正在使用的命令以进行转换。只有这样才能得到一个真正解释的答案。I am using Google Translate to translate the text. Here is the translated content:我正在使用谷歌翻译将文本翻译成中文。以下是翻译后的内容: - rll
抱歉..已更新帖子,并添加了命令。 - pashah
1个回答

0
也许先读取第一页的几何形状,然后调整所有页面的大小以匹配?
SIZE=$(identify -format '%g' input.pdf)
convert  -monochrome \
         -density 1200 \
         -resize $SIZE \
         -white-threshold 50% \
         -black-threshold -50% \
         -append \
         output.png

感谢@emcconville。但是,这样做无法保留分辨率。输出的PNG图像会降质。 - pashah

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接