簡體   English   中英

每個命令行調整多個單個PDF的大小

[英]Resize multiple single PDF per command line

一個文件夾中大約有100個PDF,它們的頁面大小不同(即A4,更奇怪),但所有文件的A4長寬比都不同。 現在我們需要將所有尺寸調整為相同的大小,即A4。

目前,我們使用Sejda合並每個批處理文件中的一些PDF。 因此,我們希望再次為每個批處理文件提供一個解決方案。

在此問題中,他們建議使用PDFtk或PDF拆分和合並的其他解決方案,但它們似乎不提供此功能。 還有其他方法或提示嗎?

您可以嘗試為此使用Ghostscript。 以下命令會將每個單獨的PDF調整為A4:

for input in *.pdf ; do
     gs                        \
       -o A4-resized-${input}  \
       -sDEVICE=pdfwrite       \
       -dPDFFitPage            \
       -g5950x8420             \
       -dPDFSETTINGS=/prepress \
        ${input}
 done

此命令將從所有輸入文件創建合並的PDF,並在此過程中調整每個頁面的大小:

 gs                        \
   -o A4-resized-${input}  \
   -sDEVICE=pdfwrite       \
   -dPDFFitPage            \
   -g5950x8420             \
   -dPDFSETTINGS=/prepress \
    *.pdf

如果外殼通配符*.pdf沒有按您的喜好對頁面進行排序,則必須自己完成:

[...gs-cmd...]  input1.pdf input2.pdf input3.pdf [input4.pdf ...] 

注意事項 :在以下情況下,第二個選項(合並和調整單個PDF的大小)可能會導致合並PDF中的字體出現問題:

  1. 您的Ghostscript安裝不是最新版本。
  2. 輸入的PDF文件使用子集的字體,其中字體名稱的“唯一”前綴(例如XAGTRU+ )根本不是唯一的,而是可以預測的。 眾所周知,OpenOffice / LibreOffice和其他PDF生成器始終以可預測的方式以BAAAAA+CAAAAA+DAAAAA+開頭前綴。 這將導致輸入PDF注入的BAAAAA+Arial字體的多個實例,這些實例不是唯一的但有所不同 ,但仍使用相同的名稱。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM