Chciałbym więc dodać "stopkę" (atrybucję) na dole każdej strony pliku pdf, który generuję za pomocą postscriptu z groff w linuxie. Konwertuję plik z ps do pdf sam, z narzędziem ps2pdf, więc mam dostęp do obu formatów.Jak dodać stopkę do dolnej części każdej strony pliku postscriptu lub pliku pdf w systemie Linux?
Te dwa stanowiska były nieco pomocny:
How to add page numbers to Postscript/PDF
How can I make a program overlay text on a postscript file?
Nie jestem przeciwko pomocą pierwszej metody, ale nie mam dostępu do narzędzia pdflatex
wymienionego w pierwszy skrypt, ani nie mam opcji, aby zainstalować go na komputerze, który musi wykonać pracę.
Wygląda na to, że druga metoda mogłaby działać, ale mam zainstalowaną wersję 8.15 ghostscript i nie widziałem wielu flag wymienionych na stronie man (http://unix.browserdebug.com/man/gs/). Myślę, że mam dostęp do flagi "-c", aby wstawić kod postscriptowy, nawet jeśli nie ma go na liście. Tak czy inaczej, oto dwa polecenia próbowałem bezskutecznie:
gs -o output.pdf -sDEVICE=pdfwrite -g5030x5320 \ -c "/Helvetica-Italic findfont 15 scalefont setfont 453 482 moveto (test-string) show" \ -f input.ps
że daje mi to:
Unknown switch -o - ignoring ESP Ghostscript 815.02 (2006-04-19) Copyright (C) 2004 artofcode LLC, Benicia, CA. All rights reserved. This software comes with NO WARRANTY: see the file PUBLIC for details. ERROR: /undefinedfilename in (output.pdf) Operand stack: Execution stack: %interp_exit .runexec2 --nostringval-- --nostringval-- --nostringval-- 2 %stopped_push --nostringval-- --nostringval-- --nostringval-- false 1 %stopped_push Dictionary stack: --dict:1117/1686(ro)(G)-- --dict:0/20(G)-- --dict:102/200(L)-- Current allocation mode is local Last OS error: 2 ESP Ghostscript 815.02: Unrecoverable error, exit code 1
Więc oczywiście -o Flaga ma problem i tak zrobiłem rozeznanie i próbował tej składni:
gs -sOUTPUTFILE=output.pdf -sDEVICE=pdfwrite -g5030x5320 \ -c "/Helvetica-Italic findfont 15 scalefont setfont 453 482 moveto (test-string) show" \ -f input.ps
który wyprowadza to i sprawia mi naciśnij Enter 4 razy (może istnieją 4 stron input.ps)
ESP Ghostscript 815.02 (2006-04-19) Copyright (C) 2004 artofcode LLC, Benicia, CA. All rights reserved. This software comes with NO WARRANTY: see the file PUBLIC for details. Can't find (or can't open) font file /usr/share/ghostscript/8.15/Resource/Font/Helvetica-Italic. Can't find (or can't open) font file Helvetica-Italic. Querying operating system for font files... Didn't find this font on the system! Substituting font Helvetica-Oblique for Helvetica-Italic. Loading NimbusSanL-ReguItal font from /usr/share/fonts/default/Type1/n019023l.pfb... 3742416 2168114 2083056 759694 1 done. Loading NimbusRomNo9L-ReguItal font from /usr/share/fonts/default/Type1/n021023l.pfb... 3781760 2362033 2365632 1015713 1 done. Loading NimbusRomNo9L-Medi font from /usr/share/fonts/default/Type1/n021004l.pfb... 3865136 2547267 2365632 1029818 1 done. Loading NimbusRomNo9L-Regu font from /usr/share/fonts/default/Type1/n021003l.pfb... 4089592 2759001 2365632 1032885 1 done. Using NimbusRomanNo9L-Regu font for NimbusRomNo9L-Regu. >>showpage, press <return> to continue<< >>showpage, press <return> to continue<< >>showpage, press <return> to continue<< >>showpage, press <return> to continue<<
Więc wydaje się, że byłoby to dość proste w użyciu gs
po prostu wstawić coś w pliku ps, ale to okazuje się być dość skomplikowane ...
Używam systemu, który ma zainstalowany ESP bez uprawnień do zainstalowania uaktualnionej wersji. Zastanawiam się, czy istnieje sposób, w jaki mogę go uruchomić z ESP ... – cwd
ESP Ghostscript nie jest już obsługiwany .... Jedynym sposobem na to, aby działał jako nieuprzywilejowany użytkownik, jest zainstalowanie dodatkowej wersji z Ghostscript do twojego katalogu domowego (lub dowolnego innego miejsca zapisywalnego na twoim koncie). –