GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Outil pour diviser un livre enregistré en un seul PDF en un seul PDF par chapitre ?

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

Ubuntu
  1. Comment diviser un seul fichier en plusieurs fichiers en fonction des lignes

  2. Diviser le fichier par nombre de lignes, y compris l'en-tête dans chacune ?

  3. Lire le fichier dans le tableau ?

  4. Fusionner/convertir plusieurs fichiers PDF en un seul PDF

  5. Comment lister un nom de fichier par ligne de sortie sous Linux ?

Comment compresser un fichier PDF dans Ubuntu

Comment joindre plusieurs lignes en une seule dans un fichier sous Linux

Comment fusionner plusieurs fichiers PDF en un seul PDF sous Linux

Comment diviser un fichier MP3 ?

Comment diviser un seul compte cPanel en plusieurs

Comment compresser plusieurs fichiers dans un seul fichier gz?