Provided by: pdf2djvu_0.7.17-3ubuntu2_amd64
NAZWA
pdf2djvu - tworzy pliki DjVu z plików PDF
STRESZCZENIE
pdf2djvu [{-o | --output} plik-wyjściowy-djvu] [opcja...] plik-pdf... pdf2djvu {-i | --indirect} plik-indeksowy-djvu [opcja...] plik-pdf... pdf2djvu {--version | --help | -h}
OPIS
Program ten tworzy plik DjVu na podstawie jedngo lub więcej plików w formacie Portable Document Format.
OPCJE
pdf2djvu przyjmuje następujące opcje: Typ dokumentu, nazwy plików -o, --output=plik-wyjściowy-djvu Utwórz spakowany dokument wielostronicowy. Zapisz wynik do wyjściowego-pliku-djvu zamiast na standardowe wyjście. -i, --indirect=indeksowy-plik-djvu Utwórz rozdzielony dokument wielostronicowy. Jako nazwy pliku indeksowego użyj pliku-indeksowego-djvu; pliki składowe umieść w tym samym katalogu. Katalog musi istnieć z prawami do zapisu. --pageid-template=szablon Określa schemat nazewnictwa identyfikatorów stron. Opis języka szablonów znajduje się w rozdziale „JĘZYK SZABLONÓW”. Domyślny szablon to „p{page:04*}.djvu”. Aby umożliwić przenośność, identyfikatory stron: • muszą składać się tylko z małych liter ASCII, cyfr, znaków _, +, - i kropki, • nie mogą zaczynać się od znaku +, - ani kropki, • nie mogą zawierać dwóch kropek z rzędu, • muszą kończyć się rozszerzeniem .djvu lub .djv. --pageid-prefix=prefiks Równoważność „--pageid-template=prefiks{page:04*}.djvu”. --page-title-template=szablon Określa schemat tytułów stron. Opis języka szablonów znajduje się w rozdziale „JĘZYK SZABLONÓW”. Domyślnie tytuły nie są ustawiane. Rozdzielczość, wielkość strony -d, --dpi=rozdzielczość Określa, że pożądaną rozdzielczością jest rozdzielczość punktów na cal. Domyślną wartością jest 300 dpi. Dopuszczalny zakres to: 72 ≤ rozdzielczość ≤ 6000. --media-box Do określenia rozmiaru strony użyj MediaBox. Domyślnie używane jest CropBox. --page-size=szerokośćxwysokość Określa, że preferowanym rozmiarem strony jest szerokość pikseli × wysokość pikseli. Faktyczny rozmiar strony może zostać zmieniony, by zachować proporcje obrazu i wymogi DjVu dot. rozdzielczości. (Ta opcja ma pierwszeństwo nad -d/--dpi.) --guess-dpi Spróbuj odgadnąć pierwotną rozdzielczość poprzez ogląd osadzonych obrazów. Używać ostrożnie. Jakość obrazu --bg-slices=n+...+n, --bg-slices=n,...,n Określa jakość kompresji warstwy tła IW44. Opcja ta jest podobna do opcji -slice programu c44. Szczegóły znajdują się w podręczniku c44(1). Domyślną wartością jest 72+11+10+10. --bg-subsample=n Określa współczynnik podpróbkowania tła. Domyślną wartością jest 3. Dopuszczalne wartości to liczby całkowite od 1 do 12 włącznie. --fg-colors=default Staraj zachować się wszystkie kolory pierwszego planu. Tak jest domyślnie. --fg-colors=web Zredukuj kolory pierwszego planu do palety WWW (216 kolorów). Ta opcja nie jest zalecana. --fg-colors=n Użyj GraphicsMagicka do zredukowania do n liczby różnych kolorów na pierwszym planie. Dopuszczalne wartości to liczby całkowite od 1 do 4080. Ta opcja nie jest zalecana. --fg-colors=black Odrzuć informacje o kolorach pierwszego planu. --monochrome Rastruj strony jako dwukolorowe bitmapy. W takim wypadku opcje --bg-... i --fg-... nie są respektowane. --loss-level=n Określa agresywność kompresji stratnej. Domyślną wartością jest 0 (kompresja bezstratna). Dopuszczalne wartości to liczby całkowite od 0 do 200 włącznie. Opcja ta jest podobna do opcji -losslevel programu cjb2; szczegóły znajdują się w podręczniku cjb2(1) . Opcja ta jest respektowna tylko razem z opcją --monochrome. --lossy Synonim --loss-level=100. --anti-alias Włącz antyaliasing fontów i grafiki wektorowej. Ta opcja nie jest zalecana. Wyodrębnianie --no-metadata Nie wyodrębniaj metadanych. Domyślnie: • Wyodrębniane są następujące hasła słownika informacji o dokumencie: Title, Author, Subject, Creator, Producer, CreationDate, ModDate. Zapisy daty i czasu są formatowane wg RFC 3999[1], z datą i czasem oddzielonymi pojedynczą spacją. • Metadane XMP są wyodrębniane (lub tworzone) i odpowiednio aktualizowane. Uwaga W przypadku wielu dokumentów wejściowych, tylko metadane pierwszego z nich są brane pod uwagę. --verbatim-metadata Zachowaj oryginalne metadane bez zmian. --no-outline Nie wyodrębniaj konspektu dokumentu. --hyperlinks=border-avis Spraw, by ramki hiperłączy były zawsze widoczne. Domyślnie ramka hiperłącza jest widoczna tylko gdy nad nim znajduje się kursor myszki. --hyperlinks=#RRGGBB Wymuś określony kolor ramki hiperłączy. --no-hyperlinks, --hyperlinks=none Nie wyodrębniaj hiperłączy. --no-text Nie wyodrębniaj tekstu. --words Wyodrębniaj tekst. Zapisz położenia każdego słowa. Tak jest domyślnie. --lines Wyodrębniaj tekst. Zapisz położenia każdej linii, a nie każdego słowa. --crop-text Nie wyodrębniaj tekstu, który znajduje się poza granicami strony. --no-nfkc Nie poddawaj tekstu normalizacji NFKC[2]. --filter-text=linia-poleceń Przefiltruj tekst przez linię-poleceń. Dany filtr musi zachowywać białe znaki, znaki kontrole i cyfry dziesiętne. Opcja ta implikuje --no-nfkc. -p, --pages=zakres stron Określa strony przeznaczone do konwersji. zakres-stron jest oddzielaną przecinkami listą podzakresów. Każdy podzakres to albo pojedyncza strona (np. 17), albo ciągły zakres stron (np. 37-42). Strony numerowane są od 1. Domyślnie konwertowane są wszystkie strony. Wydajność -j, --jobs=n Użyj n wątków do przeprowadzenia konwersji. Domyślnie używany jest jeden wątek. -j0, --jobs=0 Określ liczbę wątków używanych do przeprowadzenia konwersji automatycznie. Gadatliwość, pomoc -v, --verbose Wyświetlaj więcej komunikatów informacyjnych podczas konwersji pliku. -q, --quiet Nie wyświetlaj komunikatów informacyjnych podczas konwersji pliku. --version Wyświetl informację o wersji i wyjdź. -h, --help Wyświetl pomoc i wyjdź.
ŚRODOWISKO
Następujące zmienne środowiskowe mają wpływ na działanie pdf2djvu w systemach uniksowych: OMP_* Zachowanie programu pod względem współbieżności można kontrolować za pomocą kilku zmiennych środowiskowych. Szczegóły opisane są w specyfikacji API OpenMP[3]. TMPDIR pdf2djvu intensywnie używa plików tymczasowych. Są one składowane w katalogu określonym przez tę zmienną. Domyślną wartością jest/tmp.
JĘZYK SZABLONÓW
Składnia szablonów Język szablonów jest z grubsza wzorowany na składni formatowania napisów w języku Python[4]. Szablon to kawałek tekstu zawierający pola, otoczone klamrami {}. Kiedy szablon jest wyliczany, pola zastępowane są odpowiednio sformatowanymi wartościami. Ponadto ciąg {{ jest zastępowany pojedynczym { a ciąg }} — pojedynczym }. Składnia pól Każde pole składa się z nazwy zmiennej, po której opcjonalnie następuje przesunięcie, po którym opcjonalnie następuje specyfikacja formatu. Przesunięcie jest liczbą całkowitą ze znakiem (tj. zaczynającą się znakiem + lub -). Specyfikacja formatu składa się z dwukropka, po którym następuje specyfikacja szerokości. Specyfikacja szerokości jest liczbą całkowitą definiującą minimalną szerokość pola. W przypadku braku definicji, szerokość zostanie określona na podstawie treści. Poprzedzenie specyfikacji szerokości zerem (0) powoduje dopełnianie zerami. Po specyfikacji szerokości może opcjonalne nastąpić znak gwiazdki (*), który zwiększa minimalną szerokość pola do największej możliwej długości zawartości zmiennej. Dostępne zmienne page, spage Numer strony w dokumencie PDF. dpage Numer strony w dokumencie DjVu.
SZCZEGÓŁY IMPLEMENTACJI
Algorytm separacji warstw Jeżeli nie użyto opcji --monochrome, pdf2djvu używa następującego naiwnego algorytmu separacji warstw: 1. Dla każdej strony wykonaj co następuje: 1. Zrastruj stronę do mapy pikseli w zwykły sposób. 2. Zrastruj stronę do innej mapy pikseli, z pominięciem następujących elementów strony: • tekst, • obrazy rastrowe o głębokości 1 bit na piksel, • elementy wektorowe (oprócz wypełnień o dużej powierzchni). 3. Porównaj obie mapy pikseli, piksel po pikselu: 1. Jeżeli kolory się zgadzają, zaklasyfikuj piksel jako część warstwy tła. 2. W przeciwnym wypadku, zaklasyfikuj piksel jako część pierwszego planu.
RAPORTY O BŁĘDACH
Błędy znalezione w pdf2djvu proszę zgłaszać w systemie śledzenia problemów[5].
ZOBACZ TEŻ
djvu(1), djvudigital(1), csepdjvu(1)
AUTOR
Jakub Wilk <jwilk@jwilk.net> Autor.
PRZYPISY
1. RFC 3999 http://www.ietf.org/rfc/rfc3339 2. NFKC http://unicode.org/reports/tr15/ 3. specyfikacji API OpenMP http://openmp.org/wp/openmp-specifications/ 4. składni formatowania napisów w języku Python http://docs.python.org/library/string.html#format-string-syntax 5. systemie śledzenia problemów http://code.google.com/p/pdf2djvu/issues/