Comment diviser des fichiers PDF à partir du terminal Linux à l’aide de PDFtk



L’une des méthodes les plus efficaces pour segmenter des documents PDF sous Linux ne réside pas dans l’utilisation d’outils graphiques comme Evince ou Ocular. Il s’agit plutôt de recourir à une application en ligne de commande nommée PDFtk. Celle-ci ne se contente pas de scinder les PDF, elle offre également des fonctionnalités d’édition et de modification.

Installation de PDFtk

Cette application, éprouvée par le temps, s’installe aisément sur la plupart des distributions Linux. Ouvrez un terminal et suivez les indications ci-dessous pour l’installer.

Remarque : L’installation de PDFtk nécessite l’utilisation d’Ubuntu, Debian, Arch Linux, Fedora ou OpenSUSE. Si votre distribution n’est pas parmi celles-ci, suivez les instructions d’installation à partir des sources, mentionnées plus bas.

Ubuntu

sudo apt install pdftk

Debian

sudo apt-get install pdftk

Arch Linux

PDFtk est disponible sous Arch Linux, mais l’installation ne se fait pas via les sources principales d’Arch. Il faut interagir avec l’Arch Linux AUR. Pour commencer, ouvrez un terminal et utilisez Pacman pour synchroniser la dernière version de l’outil Git.

Remarque : Un autre paquet PDFtk sur l’AUR propose une installation facilitée car il décompresse un programme prêt à l’emploi, plutôt que de compiler les sources. Nous déconseillons cette méthode, car des problèmes ont été constatés avec le paquet GCC-GCJ prêt à l’emploi.

sudo pacman -S git

Maintenant que Git est opérationnel, utilisez-le pour télécharger la dernière version de l’instantané PDFtk AUR. Dans le terminal, utilisez la commande git clone pour récupérer le fichier d’instructions de construction.

git clone  https://aur.archlinux.org/pdftk.git

À l’aide de la commande CD, déplacez le terminal vers le dossier pdftk nouvellement cloné.

cd pdftk

Lancez le processus de construction en exécutant makepkg dans le dossier sources PDFtk. L’exécution de cette commande téléchargera, compilera et installera automatiquement toutes les dépendances nécessaires. En cas d’échec de récupération automatique des dépendances, installez-les manuellement. Les dépendances du paquet PDFtk AUR sont disponibles sur ce lien.

Fedora

Actuellement, il n’existe pas de paquet Fedora PDFtk dans les référentiels de logiciels. Heureusement, les paquets OpenSUSE sont facilement exploitables. Commencez par utiliser wget pour télécharger les paquets nécessaires.

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

Déplacez le terminal vers le dossier Téléchargements à l’aide de la commande CD.

cd ~/Downloads

Enfin, installez PDFtk à l’aide du gestionnaire de paquets 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

Compilation à partir des sources

La compilation de PDFtk à partir des sources est relativement simple car des fichiers de construction préconfigurés sont présents dans le répertoire source. Pour ce faire, téléchargez d’abord le code via wget.

Pour assurer une compilation correcte de PDFtk, vérifiez que GCC, GCJ et libgcj sont installés sur votre système Linux.

wget  https://www.pdflabs.com/tools/pdftk-the-pdf-toolkit/pdftk-2.02-src.zip

Décompressez ensuite l’archive PDFtk dans votre dossier Téléchargements. Si l’application Unzip n’est pas installée, installez-la via votre gestionnaire de paquets.

cd ~/Downloads
  unzip pdftk-2.02-src.zip

L’extraction de l’archive source PDFtk doit créer un dossier « pdftk-2.02-src » dans Téléchargements. Accédez-y avec la commande CD.

cd pdftk-2.02-src

Le dossier racine de PDFtk ne contient pas grand chose. Pour compiler, accédez au sous-dossier PDFtk.

cd pdftk

Ce sous-dossier renferme des dizaines de Makefiles spécialisés que l’utilisateur peut utiliser pour compiler automatiquement le programme pour différents systèmes d’exploitation. Affichez le contenu du répertoire à l’aide de la commande LS.

ls

Identifiez le Makefile approprié et lancez le processus de compilation avec la commande ci-dessous. Remplacez « Makefile.filename » par le nom du Makefile que vous souhaitez utiliser.

make -f Makefile.filename

Utilisation de PDFtk

La grande force de PDFtk réside dans sa capacité à fusionner et à diviser des PDF. Par exemple, pour segmenter un PDF de sorte que chaque page devienne un fichier distinct, essayez la commande suivante :

pdftk testfile.pdf burst

PDFtk enregistrera les fichiers segmentés au même emplacement que le fichier source.

Souhaitez-vous reconstituer tous les fichiers PDF divisés en un seul ? Renommez d’abord le fichier PDF d’origine par mesure de sécurité.

mv testfile.pdf testfile.bak

Maintenant que le fichier test est en sécurité, combinez le tout avec PDFtk. Affichez d’abord les fichiers du répertoire à l’aide de la commande LS.

ls

Exécutez à nouveau la commande LS, mais cette fois, stockez tous les noms de fichiers PDF dans un fichier texte.

ls *.pdf >> pdf-filenames.txt

Attribuez le contenu du fichier pdf-filenames.txt à une variable Bash. L’utilisation d’une variable dans cet exemple permet de garantir que lors de la recombinaison, les pages seront dans l’ordre.

value=$(<pdf-filenames.txt)

Enfin, recombinez le PDF avec PDFtk et la variable $value.

pdftk $value cat output recombined-document.pdf