gpt4 book ai didi

ImageMagick 命令行 : converting PDF to high definition images

转载 作者:行者123 更新时间:2023-12-04 03:04:57 25 4
gpt4 key购买 nike

我正在尝试使用命令行中的 imagemagick 将 PDF 文件动态转换为图像。这些 PDF 的清晰度非常高,我想获得相关图像 (JPG)。

通常使用Gimp,当我在此软件下将这些PDF转换为600dpi时,质量非常好。但我没有看到自己用 Gimp 一张一张地转换超过 500 张图像……这就是我转向 ImageMagick 的原因,特别是因为我越来越频繁地动态转换图像文件,我想掌握这种类型的工具。

唉,使用 ImageMagick,尽管将密度设置为 600dpi,但默认情况下我会得到非常小的图像(类型 468x705):

convert *.pdf -density 600 -quality 100 *.jpg

所以我加了一个 resize命令(我也尝试过 scale ),图像的清晰度要高得多(类型 4680x7050),但像素化了,就好像我保持默认定义一样:
convert *.pdf -resize 1000% -density 600 -quality 100 *.jpg

我什至认为它可能来自订单的顺序,但这并没有改变任何东西:
convert *.pdf -density 600 -resize 1000% -quality 100 *.jpg

一个主意 ?

附属(但不太重要)问题:如何使目标文件的名称与原始文件相同?

编辑:除了 Mark Setchell 提出的 for 循环之外,我刚刚发现您可以使用 mogrify .例子:
mogrify -format jpg -density 600 -blur 1x1 -quality 100 *.pdf

最佳答案

你可能想要这样的东西——注意你把 -density 之前 PDF文件名:

for f in *.pdf; do convert -density 144 "$f" "${f%pdf}jpg"; done

棘手的部分是删除 pdf扩展并将其替换为 jpg ,我使用了“bash 参数替换”,它描述得很好 here .

从长远来看,那就是
for f in *.pdf; do 
convert -density 144 "$f" "${f%pdf}jpg"
done

另一种选择是使用 mogrify :
mogrify -density 144 -format jpg *pdf

如果您有 GNU 并行 安装后,您可以像这样更易读和更快地完成它:
parallel convert -density 144 {} {.}.jpg ::: *pdf

关于ImageMagick 命令行 : converting PDF to high definition images,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45484105/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com