Pdf

在特定位置“放置”字母大小的 PDF 到更大的 pdf

  • January 24, 2019

Lulu是一項按需列印服務。創建過程的一部分是上傳封面。“封面”是 1 頁,尺寸為 17.25 英寸寬 x 11.25 英寸高。所有邊緣都有一個 0.125 的“出血區域”,列印後將被切斷。不包括出血,左邊 8.5 英寸是後蓋,右邊 8.5 英寸是前蓋。請參閱下圖以獲取視覺幫助。

我有一個 1 頁的 pdf,稱為cover-page.pdf信紙,我想用作封面。

$ pdfinfo cover-page.pdf | grep Size
Page size:      612 x 792 pts (letter)

僅使用開源命令行工具,我想根據上面的規範創建一個新文件,cover.pdfcover-page.pdf其“放置”在封面模板的右側。

露露封面

我使用 pdftk、ImageMagick 和 ghostscript 進行了調查。閱讀可用於 pdftk 的命令後,這似乎是錯誤的工具。我嘗試使用 ImageMagick 並製作了以下內容:

convert cover-page.pdf \
  -background white -gravity SouthEast -extent 1233x801 \
  -background white -gravity None -extent 1242x810 \
  cover.pdf

這行得通,但它使用光柵轉換。

我查看的最後一件事是 Ghostscript。我對自己的鬼腳本能力最沒有信心,但我確實取得了一些進步。我設法使用正確的尺寸創建了一個空白 pdf gs -sDEVICE=pdfwrite -o cover.pdf -dDEVICEWIDTHPOINTS=1242 -dDEVICEHEIGHTPOINTS=810。但是,一旦我添加-dPDFFitPage -f cover-page.pdf處理文件,頁面大小就會變成810 x 1048.24頁面旋轉。我認為這是為了“適合” 的縱橫比cover-page.pdf。所以,我的最終(不成功)命令是:

gs \
 -sDEVICE=pdfwrite -o cover.pdf \
 -dDEVICEWIDTHPOINTS=1242 -dDEVICEHEIGHTPOINTS=810 \
 -dPDFFitPage -f cover-page.pdf

pdfjam,一個像 Texlive 這樣的 TeX 發行版中的工具,可以解決問題。該命令將是

pdfjam -o cover.pdf --papersize '{17.25in,11.25in}' --noautoscale true --nup 2x1 cover-page.pdf '{},1'

pdfjam依賴於 LaTeXpdfpages包。預設情況下,它為每個輸出頁面放置一個輸入頁面,縮放輸入以適應紙張,並將其居中。在這裡,--nup 2x1指示每個輸出頁面放置兩個輸入頁面,而--noautoscale true不是按比例縮放(您可能已經猜到了!)。作為輸入頁面,我使用了空白頁 ( {}) 和輸入文件的第一頁 ( 1);預設情況下,輸入頁面之間不添加間距。

引用自:https://unix.stackexchange.com/questions/494556