J'ai quelques livres au format PDF, et j'aimerais les diviser par chapitre pour une consommation plus facile sur un téléphone mobile. Existe-t-il un outil (ou une séquence d'outils) que je peux utiliser pour diviser facilement le livre en différents fichiers PDF par chapitre ?
Réponse acceptée :
Ce serait difficile à faire automatiquement, car il n'y a pas de standard étiquette de chapitre dans un fichier PDF. Cependant, si le travail manuel ne vous dérange pas, écrivez les pages de chaque chapitre et utilisez pdftk
pour sélectionner les pages et les enregistrer dans un nouveau fichier pdf. Par exemple, si le chapitre 2 correspond aux pages 23 à 45, faites
pdftk A=input.pdf cat A23-45 output chapter_2.pdf
Vous devez d'abord installer pdftk :
sudo apt-get install pdftk
Vous pouvez également utiliser ghostscript (qui est préinstallé) directement :
gs -sDEVICE=pdfwrite -dNOPAUSE -dBATCH -dSAFER -dFirstPage=23 -dLastPage=45 -sOutputFile=chapter_2.pdf input.pdf
C'est assez facile de convertir un script qui exécute les choses de manière semi-automatique. Tout d'abord, créez un fichier d'entrée ; sur chaque ligne, mettez le titre du fichier pdf de sortie souhaité, la page de début, la page de fin — comme ça :
chapter1 1 23
chapter2 24 56
Enregistrez ceci, à l'aide d'un éditeur de texte, dans le fichier pdfchaps.in
.
Maintenant, créez un script - enregistrez ce qui suit dans un fichier appelé pdfchaps.sh
:
#!/bin/bash
function pdfextr() {
echo "Chapter $2"
pdftk A=$1 cat A$3-$4 output $2.pdf
}
chapters=$1
pdffile=$2
echo "Splitting pdf file $pdffile by chapters from $chapters"
cat $chapters | while read line ; do pdfextr $pdffile $line ; done
Rendre le script exécutable :
chmod a+x pdfchaps.sh
Et lancez-le :
pdfchaps chaps.in mybook.pdf