
Ich verwende Ghostscript, um einige PDF-Dateien zu verarbeiten, und möchte einen dünnen schwarzen Rand um die Dateien hinzufügen. Ist das mit Ghostscript möglich, oder gibt es andere (verlustfreie) Befehlszeilentools, die das können?
Antwort1
Ich bin mir nicht sicher, ob das für Sie verlustfrei genug ist, aber Sie können verwendenBildMagick:
convert foo.pdf -bordercolor black -border 10 foo_with_a_10px_border.pdf
Für eine garantiert verlustfreie Lösung können Sie ein einseitiges PDF-Dokument mit nur einem Rand auf einertransparentHintergrund und wenden Sie es auf jede Seite Ihres Dokuments an mitpdftk's stamp
Befehl:
pdftk foo.pdf stamp border.pdf output foo_with_my_home-made_border.pdf
Antwort2
Dies kann normalerweise dadurch erfolgen, dass das PDF in PostScript konvertiert wird, am Anfang ein kleiner PostScript-Code hinzugefügt wird, um die Seitenende-Funktion zu überschreiben showpage
, und dies dann gedruckt oder in ein PDF konvertiert wird.
Sie können mit und in PDF konvertieren pdf2ps
, ps2pdf
die normalerweise mit Ghostscript gepackt sind. Dieser Beispiel-PostScript-Code fügt einen Rand in der Größe A4 hinzu:
%!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
Legen Sie dies in eine Datei, sagen wir addborder.ps
, dann können Sie
pdf2ps a.pdf a.ps
cat addborder.ps a.ps >b.ps
ps2pdf b.ps b.pdf
gv b.pdf
Für andere Papierformate bearbeiten Sie die Definition von /w
und /h
in Zentimetern. Die Beispiellinienbreite beträgt 0.5 cm
(oder die Hälfte davon, da die Linie auf der Papierkante zentriert ist).