Mając zestaw plików PDF, powiedzmy: in-01.pdf
, in-02.pdf
, in-03.pdf
, ... Chciałbym połączyć je wszystkie w jeden, tworząc M x N
matrycę.
Komenda montage
pozwala na to ( M
i N
powinny być liczbami całkowitymi):
montage -mode concatenate -tile NxM in-*.pdf out.pdf
Problem polega na tym, że rozmiar wynikowego pliku PDF jest ogromny, podczas gdy spodziewałbym się, że będzie on (może po prostu) nieco większy niż suma wszystkich wejściowych rozmiarów pliku PDF. Myślę, że montage
najpierw konwertuje wejściowe pliki PDF na obrazy, a następnie tworzy wyjściowy plik PDF z tych obrazów (na przykład tekst w oryginalnych plikach PDF nie jest wyświetlany jako tekst w wyjściowym pliku PDF, ale jako obraz o niższej jakości i większym rozmiar).
Myślę, że powinien istnieć sposób, aby to zrobić (na przykład LATEX pozwala na wstawienie obrazu PDF do innego pliku PDF bez konieczności wcześniejszej konwersji na obraz).
Szukam alternatywy dla wiersza poleceń przy użyciu bezpłatnych narzędzi programowych w systemach GNU / Linux.
UWAGA : możemy założyć, że te pliki PDF mają dokładnie taki sam wymiar (szerokość i wysokość). Są to automatycznie generowane obrazy PDF, zwykle składające się z wykresu / wykresu (proste linie, linie i prostokąty) i kilku tekstów (tytuł, etykiety ...).
źródło
montage
robi :).Odpowiedzi:
Możesz użyć programu narzędziowego
pdfnup
z pakietu pdfjam .powinien wypisać plik in-nup.pdf ze stronami in.pdf ułożonymi w szereg stron z matrycą 3x3 z pliku źródłowego pdf.
Powinieneś połączyć wszystkie swoje pliki pdf w jeden, a także musisz określić rozmiar papieru dla pliku wyjściowego, zobacz dokumentację pdfjam fot. Szczegóły.
źródło
in-
), Możesz użyć tego,pdfnup in-*.pdf --nup 3x3 --outfile out.pdf
aby uniknąć posiadania pliku wyjściowego z tym samym prefiksem. Zauważ też, że tak naprawdę nie musisz scalać wszystkich plików wejściowych w jeden (możesz po prostu użyć*
symbolu wieloznacznego). Możesz dodać to do swojej odpowiedzi.