Jedním z nejefektivnějších způsobů, jak rozdělit dokumenty PDF v operačním systému Linux, není grafické uživatelské rozhraní jako Evince nebo Ocular. Efektivní metoda spočívá v použití terminálové aplikace s názvem PDFtk. Tento nástroj nejenže umožňuje rozdělení PDF souborů, ale také jejich úpravu a modifikaci.
Instalace PDFtk
Tento program je k dispozici již delší dobu a instalace na většině linuxových distribucí je poměrně snadná. Otevřete terminál a postupujte podle níže uvedených instrukcí pro instalaci softwaru.
Poznámka: Pro instalaci PDFtk je nutné používat Ubuntu, Debian, Arch Linux, Fedoru nebo OpenSUSE. Pokud nemáte jednu z těchto distribucí, najdete pokyny pro instalaci ze zdrojového kódu v dolní části tohoto textu.
Ubuntu
sudo apt install pdftk
Debian
sudo apt-get install pdftk
Arch Linux
PDFtk je sice na Arch Linuxu dostupný, nicméně instalace z hlavních repozitářů není možná. Je nezbytná interakce s Arch Linux AUR. Pro zahájení instalace PDFtk v Arch Linuxu otevřete terminál a s použitím správce balíčků Pacman synchronizujte nejnovější verzi nástroje Git.
Poznámka: Na AUR existuje i jiný balíček PDFtk, který zjednodušuje instalaci díky dekompilaci již hotového programu. Tento postup však nedoporučujeme, protože byly zjištěny problémy s připraveným balíčkem GCC-GCJ.
sudo pacman -S git
Jakmile je Git v Arch Linuxu funkční, můžete ho použít ke stažení aktuální verze PDFtk AUR snapshotu. Pomocí příkazu `git clone` stáhněte soubor s instrukcemi pro sestavení.
git clone https://aur.archlinux.org/pdftk.git
Přesuňte terminál z domovského adresáře uživatele do nově vytvořené složky `pdftk` použitím příkazu `cd`.
cd pdftk
Uvnitř adresáře se zdrojovým kódem PDFtk zahajte proces sestavení spuštěním příkazu `makepkg`. Je důležité mít na paměti, že příkaz `makepkg` automaticky stáhne, zkompiluje a nainstaluje všechny potřebné závislosti. Pokud se ale tvůrcům nepodaří tyto závislosti automaticky zachytit, budete je muset nainstalovat manuálně. Všechny závislosti pro balíček PDFtk AUR naleznete zde.
Fedora
V současné době se balíček PDFtk nenachází v softwarových repozitářích Fedory. Nicméně, existuje možnost využití balíčků z OpenSUSE. Pro začátek, stáhněte potřebné balíčky pomocí příkazu `wget`.
wget https://ftp.gwdg.de/pub/opensuse/distribution/leap/42.3/repo/oss/suse/x86_64/pdftk-2.02-10.1.x86_64.rpm wget https://ftp.gwdg.de/pub/opensuse/distribution/leap/42.3/repo/oss/suse/x86_64/libgcj48-4.8.5-24.14.x86_64.rpm
Přesuňte se do složky „Downloads“ pomocí příkazu `cd`.
cd ~/Downloads
Nakonec, nainstalujte PDFtk pomocí správce balíčků DNF:
sudo dnf install libgcj48-4.8.5-24.14.x86_64.rpm pdftk-2.02-10.1.x86_64.rpm -y
OpenSUSE
sudo zypper install pdftk
Sestavení ze zdrojového kódu
Sestavení PDFtk ze zdrojového kódu není příliš náročné, protože ve zdrojovém adresáři se nachází předkonfigurované soubory sestavení. Pro sestavení programu ze zdrojového kódu je nejprve nutné stáhnout kód. Použijte pro stažení kódu nástroj wget v terminálu.
Ujistěte se, že máte pro správné sestavení PDFtk na vašem počítači se systémem Linux nainstalované GCC, GCJ a libgcj.
wget https://www.pdflabs.com/tools/pdftk-the-pdf-toolkit/pdftk-2.02-src.zip
Poté rozbalte složku ZIP PDFtk do složky Download vašeho Linuxového systému pomocí příkazu `unzip`. Nemáte nainstalovanou aplikaci Unzip? Vyhledejte v softwarovém správci „unzip“ a nainstalujte jej.
cd ~/Downloads unzip pdftk-2.02-src.zip
Rozbalením zdrojového archivu ZIP PDFtk by měla vzniknout složka „pdftk-2.02-src“ ve složce Downloads. Přesuňte se do ní v terminálu pomocí příkazu `cd`.
cd pdftk-2.02-src
V kořenové složce PDFtk se toho příliš neděje. Pro kompilaci je nutné přesunout se do podsložky PDFtk.
cd pdftk
Podsložka PDFtk obsahuje různé specializované soubory Makefile, které lze použít pro automatické sestavení pro různé operační systémy. Vypište obsah adresáře pomocí příkazu `ls`.
ls
Prohlédněte si a najděte konkrétní Makefile, který potřebujete a spusťte proces sestavení pomocí příkazu níže. Nezapomeňte nahradit „Makefile.filename“ názvem souboru Makefile, který potřebujete.
make -f Makefile.filename
Použití PDFtk
Jednou z klíčových funkcí PDFtk je jeho schopnost spojovat a dělit soubory PDF. Například pro rozdělení PDF souboru tak, aby každá strana dokumentu byla samostatný soubor, použijte příkaz `burst`:
pdftk testfile.pdf burst
PDFtk uloží rozdělené soubory do stejného adresáře jako původní soubor.
Chcete zpět všechny rozdělené soubory PDF spojit do jednoho? Pro začátek přejmenujte původní soubor PDF (pro jistotu).
mv testfile.pdf testfile.bak
Nyní, když je původní soubor PDF v bezpečí, můžeme ho znovu spojit s PDFtk. Nejdříve použijte příkaz `ls` k zobrazení souborů v adresáři.
ls
Poté znovu použijte příkaz `ls`, ale tentokrát ho využijte pro uložení všech názvů PDF souborů.
ls *.pdf >> pdf-filenames.txt
Přiřaďte obsah souboru `pdf-filenames.txt` do proměnné Bash. Použití proměnné v tomto případě, místo zástupného znaku, zajistí, že po spojení PDF soubory budou všechny stránky ve správném pořadí.
value=$(<pdf-filenames.txt)
Nakonec znovu spojte PDF soubory pomocí PDFtk a proměnné `$value`.
pdftk $value cat output recombined-document.pdf