
私は Ghostscript を使用していくつかの PDF ファイルを処理していますが、ファイルの周囲に細い黒い枠線を追加したいと考えています。これは Ghostscript で実行できるものでしょうか、それともこれを実行できる他の (非損失の) コマンドライン ツールがあるのでしょうか?
答え1
答え2
通常、これは、PDF を PostScript に変換し、先頭に小さな PostScript コードを追加してページ終了機能をオーバーライドしshowpage
、これを印刷するか、PDF に変換することで実行できます。
およびを使用して、PDF への変換や PDF からの変換を行うことができますpdf2ps
。ps2pdf
これらは通常、Ghostscript に同梱されています。この例の PostScript コードは、A4 サイズの境界線を追加します。
%!PS
% A4 paper is 21.0 × 29.7 cm
/cm { 28.4 mul } bind def
/w 21.0 cm def
/h 29.7 cm def
/border
{ 0.5 cm setlinewidth newpath
0 0 moveto w 0 lineto w h lineto 0 h lineto closepath stroke
} bind def
/add-border { gsave initgraphics 0 setgray border grestore } def
/orig-showpage /showpage load def
/showpage { orig-showpage add-border } def
add-border
これを例えばファイルに入れてaddborder.ps
、
pdf2ps a.pdf a.ps
cat addborder.ps a.ps >b.ps
ps2pdf b.ps b.pdf
gv b.pdf
/w
その他の用紙サイズの場合は、との定義を/h
センチメートル単位で編集します。例の線の幅は0.5 cm
(または、線が用紙の端の中央に配置されている場合は、この半分) です。