Moduł Pod::Pdf
Uniwersytet Gdański - Instytut Matematyki - Zakład Informatyki - Strona domowaSpis treści
Co to jest?
- Składnia
- Opis
Przekształca POD w PDF.
Dla wszystkich systemów:
pod2pdf([options])
W połączeniu ze skryptem pod2pdf z linii komend.
pod2pdf [options] <file>
pod2pdf przekształca zwykły plik POD w plik PDF. Przyszłe rozszerzenia tego programu mogą pozwolić na przetwarzanie wielu plików POD w pojedyncza książkę. Na tym etapie nacisk jest kładzony na prostotę oraz łatwość użycia. Wyjściowy plik PDF otrzymuje nazwę pliku wejściowego ze dodanym przyrostkiem na .pdf.
Szkic PDF jest tworzony na poziomach drzewa odpowiadających =head1, =head2 oraz =item. Nagłówki szkicu są odtwarzane jako strona spisu treści. Długie napisy =item skracane do długości które będą rozsądne dla przestrzeni dostępnej na stronie. Kiedy dokument PDF jest wyświetlany na ekranie, szkic (czasem nazywany Bookmarks) zapewnia odnośniki do odpowiednich stron. Kiedy dokument jest drukowany ToC zapewnia tę samą funkcje.
Odnośniki w formie xyz.pm oraz odnośniki do nazwanych celów nie są implementowane, ponieważ rzadko jest możliwe rozwiązywanie odnośników za wyjątkiem limitowanych przypadków nazwanych odnośników w samym dokumencie. Linki do adresów URL (włączając w to ftp, http, mailto) są jednakże, oraz wywołują domyślną przeglądarkę.
Specyfikacja POD perlpod.pod pozwala aby bloki tekstu były zamknięte przez znaczniki =begin oraz =end. Typy bloków mogą być wskazywane przez napis po =begin (na przykład =begin html wskazuje na blok HTML), z których rozpoznawane są roff, man, latex, tex, oraz html. W przeciwnym przypadku zostaną kompletnie zignorowane. Wydaje się, że może to zabić przedmiot dokumentu, ponieważ zupełnie innego wyjścia mogli byśmy się spodziewać.. Jest wątpliwym czy to było by rzeczywiście intencją autora.
Głównym założeniem jest wyprodukownie przetworzonego pliku POD dobrej typograficznej jakości, który może zostać wydrukowany na każdej drukarce (w szczególności na nisko kosztowych nie PostScriptowych atramentowych drukarkach) w każdym środowisku. W związku należy zwrócić uwagę, że niektórzy autorzy POD'ów zaznaczają inteligentnie oraz z lepszymi efektami od innych. Nie rzadko błędy w formatowaniu sprawiają ze pliki nie są przetwarzane poprawnie na niektórych bądź każdym translatorze. Plik PDF mają bardzo użyteczną umiejętność szybkiego przejrzenia przetworzenia zanim plik zostanie wysłany do drukarki.
Opcje
- Rozmiar papieru
Domyślnie rozmiar papieru to A4 (może to zostać zmienione):
my $x_size = 595; # domyślna szerokość strony (piksele) my $y_size = 842; # domyślna wysokość strony (piksele)
Opcje:
--paper=usletter
Ustawić północno amerykański standardowy rozmiar:
my $x_size = 612; # US letter szerokość strony (piksele) my $y_size = 792; # US letter wysokość strony (piksele)
Program zaakceptuje każdy rozsądny rozmiar papieru.
- Raportowanie błędów.
Limitowane raportowanie błędów na standardowe wyjście może zostać włączone poprzez ustawienie $verbose:
--verbose=1 # raport postępu --verbose=2 # bardziej rozbudowany raport o odnośnikach
- Plik wejściowy
Nazwę pliku wejściowego można podać na wiele sposobów w większości systemów. Może zostać dołączona jako opcja, bądź też jako argument napis dla pod2pdf, bądź też jako składnik w @ARGV w końcu jako wpis z linii poleceń na systemach które wspierają linie poleceń.
--podname=filename
- Dwustronne drukowanie
Wyjście zawsze jest dwustronne w sensie takim że strony są połączone z numerem strony. Jednakże nie każdy posiada drukarkę drukującą dwustronnie, na szczęście większość z nich są w stanie drukować wszystkie nieparzyste strony za jednym przejściem oraz wszystkie parzyste za drugim, co daje taki sam rezultat. Nawet jeśli jest to nie możliwe bądź nie warte starań, oraz cały dokument drukowany jest jednostronnie, nie jest to wielkim minusem.
- Nazwa dokumentu
Skoro progam jest ograniczony do przetwarzania pojedynczych plików POD nazwa pliku wejściowego może zostać użyta jako wyjściowego rozróżnialna prosto poprzez rozszerzenie .pdf. Jeśli plik o takiej nazwie juz istnieje zostanie nadpisany bez ostrzeżenia.
Ze względu na kładziony nacisk na prostotę oraz łatwość użycia opcje zostały skrócone do minimum. Jednakże opcja do ustawiania rozmiaru papieru pozostaje konieczna dopóki świat nie uzgodni standardu. Jedynie papier A4 oraz USLetter są zaprogramowane, inne rozmiary będą potrzebowały zmian w kodzie Pdf.pm.
Opcje są zaimplementowane z użyciem Getopt::Long używając składni --[key]= tak jak opisano niżej. Kolejność w jakiej są podane jest nieistotna.
Przykłady.
- Przykład 1 (wszystkie platformy)
-
use Pod::Pdf; push @ARGV, qw(--paper usletter --verbose 1); push @ARGV, 'podfilename'; pod2pdf(@ARGV);
- Przykład 2 (wszystkie platformy)
-
use Pod::Pdf; pod2pdf( '--paper=usletter', 'podfilename' );
- Przykład 3 (wszystkie platformy)
-
use Pod::Pdf; pod2pdf( '--paper=usletter', '--verbose=2', '--podfile=podfilename' );
- Przykład 3 (wszystkie platformy)
-
use Pod::Pdf; unshift @ARGV, '--paper=usletter'; pod2pdf(@ARGV);
- Przykładowy pdf
-
Przykładowy pdf wygenerowany za pomocą tego modułu jest dostępny tutaj Pdf.pm.pdf. Jak łatwo zauważyć został on wygenerowany z pliku o nazwie Pdf.pm który zawiera dokumentacje pod. Jak widać pdf nie jest idealny pomimo poprawnej składni pod'a.
Dodatkowe informacje.
- Przydatne linki
Kontakt i informacje o autorze opracowania
Autor modułu:
Alan J. Fry
Autor przekładu: MD
Numer GG: 2194164