# Découper un pdf avec pdftk: augmentation de taille!

**URL:** <https://www.debian-fr.org/t/decouper-un-pdf-avec-pdftk-augmentation-de-taille/88704>\
**Category:** Support Debian\
**Created:** [Août 24, 2023, 1:10 UTC](https://www.debian-fr.org/t/decouper-un-pdf-avec-pdftk-augmentation-de-taille/88704 "2023-08-24T13:10:12Z")\
**Posts on this page:** 11\
**Page:** 1

<div class="post-metadata">

**Author:** ![josephtux](https://www.debian-fr.org/user_avatar/www.debian-fr.org/josephtux/32/3985_2.png) [@josephtux](https://www.debian-fr.org/u/josephtux)\
**Post date:** [Août 24, 2023, 1:10 UTC](https://www.debian-fr.org/t/decouper-un-pdf-avec-pdftk-augmentation-de-taille/88704/1 "2023-08-24T13:10:12Z")

</div>

Bonjour,

voulant donner à Deepl un gros fichier pdf à traduire, celui-ci comportait trop de caractères.  
J’ai donc voulu séparer ce gros pdf en 2 plus petits, à donner séparément à deepl.

J’ai voulu utiliser pdftk:  
`pdftk gros.pdf cat 1-500 output demigros1.pdf`

ce qui donne un demi-fichier demigros.pdf, plus gros que le gros.pdf entier!

Cette fois deepl refuse car le fichier est trop gros!

J’ai ensuite tenté d’enlever la première page, et celà donne un fichier 2 fois plus gros!

ceci est du au fait que pdftk n’enlève pas les pages 501-end, mais sépare chaque page avant de les concaténer (commande cat).

Ghostscript, me semble-t-il, transforme les pages de texte en page d’image, donc incompatible avec cet usage. (et la qualité est trop dégradée pour obtenir une réduction suffisante des gros demi-fichiers pdf obtenus par pdftk)

Connaîtriez vous une méthode pour diviser en 2 un fichier pdf (qui contient surtout du texte à donner à Deepl) sans augmenter considérablement sa taille?

Je pourrais diviser le pdf en 4 ou 5 parties dans 4 ou 5 fichiers différents, mais je perds alors la possibilité (le droit) de donner d’autres fichiers à traduire à deepl avant 1 mois, (à moins de payer plus cher, ce que je cherche à éviter si possible…)

Bien entendu, il reste la solution d’extraire le texte du pdf, ce qui donnerait un fichier très léger, facile à découper, mais avec perte de toute la mise en page et des illustrations, donc un gros travail de recomposition (avec XeLaTeX par exemple).

---

<div class="post-metadata">

**Author:** ![Clochette](https://www.debian-fr.org/user_avatar/www.debian-fr.org/clochette/32/8757_2.png) [@Clochette](https://www.debian-fr.org/u/Clochette)\
**Post date:** [Août 24, 2023, 1:38 UTC](https://www.debian-fr.org/t/decouper-un-pdf-avec-pdftk-augmentation-de-taille/88704/2 "2023-08-24T13:38:21Z")

</div>

> [@josephtux](#):
>
> J’ai voulu utiliser pdftk:  
> `pdftk gros.pdf cat 1-500 output demigros1.pdf`

Tu ne lui à pas préciser la fin de ton demigros.pdf …

petit pense bête :

> **[PDFtk Server Examples](https://www.pdflabs.com/docs/pdftk-cli-examples/)**
>
> These examples show you how to perform common PDF tasks from the command-line using pdftk.

---

<div class="post-metadata">

**Author:** ![dindoun](https://www.debian-fr.org/user_avatar/www.debian-fr.org/dindoun/32/4281_2.png) [@dindoun](https://www.debian-fr.org/u/dindoun)\
**Post date:** [Août 24, 2023, 1:52 UTC](https://www.debian-fr.org/t/decouper-un-pdf-avec-pdftk-augmentation-de-taille/88704/3 "2023-08-24T13:52:35Z")

</div>

pdfjam fait ça aussi  
`pdfjam annals\ of\ the\ icrp\ 134\ 2016.pdf '1-100'`

---

<div class="post-metadata">

**Author:** ![anon29980398](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/a/f4b2a3/32.png) [@anon29980398](https://www.debian-fr.org/u/anon29980398)\
**Post date:** [Août 25, 2023, 1:43 UTC](https://www.debian-fr.org/t/decouper-un-pdf-avec-pdftk-augmentation-de-taille/88704/4 "2023-08-25T01:43:24Z")

</div>

Bonjour

Une autre méthode, mais qui n’utilise pas **pdftk**  
tu pourrais, par exemple depuis le _Visionneur de documents_ **Atril**  
demander l’impression **dans un fichier** d’une partie du document affiché :

 ![imprimDsFichier](https://www.debian-fr.org/uploads/default/original/2X/b/bc9e12acd9486729295f3cd9eefec9e321355613.png)

et tu n’auras plus qu’à indiquer les numéros de la première et de la dernière page que tu voudrais voir dans ton nouveau fichier pdf  
que j’ai nommé, dans cette capture d’écran :  
`~/Documents/sortie.pdf`

En utilisant un fichier source pdf contenant des images et du texte, j’ai «&nbsp;imprimé&nbsp;» de cette façon la moitié du nombre de ses pages dans un fichier pdf, et la taille du fichier pdf créé correspond bien à environ la moitié de celle du fichier source.

---

<div class="post-metadata">

**Author:** ![josephtux](https://www.debian-fr.org/user_avatar/www.debian-fr.org/josephtux/32/3985_2.png) [@josephtux](https://www.debian-fr.org/u/josephtux)\
**Post date:** [Août 25, 2023, 7:33 UTC](https://www.debian-fr.org/t/decouper-un-pdf-avec-pdftk-augmentation-de-taille/88704/5 "2023-08-25T07:33:36Z")

</div>

Bonjour,  
La fin, c’est la page 500 de l’original. Je ne comprends pas votre remarque

---

<div class="post-metadata">

**Author:** ![anon29980398](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/a/f4b2a3/32.png) [@anon29980398](https://www.debian-fr.org/u/anon29980398)\
**Post date:** [Août 25, 2023, 7:53 UTC](https://www.debian-fr.org/t/decouper-un-pdf-avec-pdftk-augmentation-de-taille/88704/6 "2023-08-25T07:53:44Z")

</div>

Dans la capture d’écran, j’avais demandé de n’_imprimer_ (dans le nouveau fichier pdf à créer) que depuis la première page jusqu’à la page N°8 : `1-8`

Si ton document fait 500 pages, tu n’auras qu’à spécifier de n’imprimer que de la première page jusqu’à la page N°250 en entrant dans la zone de saisie nommée **Pages** : `1-250`

---

<div class="post-metadata">

**Author:** ![josephtux](https://www.debian-fr.org/user_avatar/www.debian-fr.org/josephtux/32/3985_2.png) [@josephtux](https://www.debian-fr.org/u/josephtux)\
**Post date:** [Août 25, 2023, 7:58 UTC](https://www.debian-fr.org/t/decouper-un-pdf-avec-pdftk-augmentation-de-taille/88704/7 "2023-08-25T07:58:21Z")

</div>

Bonjour,  
_pdfjam_ fait bien le travail attendu (avec un accroissement modéré de la taille totale):  
Mon test avec _atril_ fait pire que _pdftk_ (et la durée de la génération du fichier suggère une méthode analogue à celle de _pdfpk_, page par page)

pgfmanual.pdf : 9,8M

avec _pdftk_:  
pgfmanual sans page1: 18M

pgfmanual1.pdf: 13M  
pgfmanual2.pdf: 5M

avec _pdfjam_:  
pgfmanual-1.pdf: 5,5M  
pgfmanual-2.pdf: 8 M

avec _atril_:  
pgfmanual-1.pdf: 11 M  
pgfmanual-2.pdf: 12 M

En outre, avec la commande suivante:

`gs -dDetectDuplcateImages=true -dDetectDuplcateImages=true -sDEVICE=pdfwrite -sPAPERSIZE=a4 -r150x150 -dNOPAUSE -dQUIET -dBATCH -dSAFER -dPDFSETTINGS=/ebook -sOutputFile=pgfmanual-1-562-pdfjam_reduit.pdf -f pgfmanual-1-562-pdfjam.pdf` (\*)

le fichier obtenu réduit de 25% la taille du pdf, alors qu’avec _pdftk_, cette commande est inefficace, et avec le pdf d’_atril_ (beaucoup plus gros) il ne fait gagner que 5%.

Le gagnant est donc _pdfjam_.

(\*) commande d’un script personnel, avec l’option de qualité « e-book ».

Merci à tous les 3

---

<div class="post-metadata">

**Author:** ![Clochette](https://www.debian-fr.org/user_avatar/www.debian-fr.org/clochette/32/8757_2.png) [@Clochette](https://www.debian-fr.org/u/Clochette)\
**Post date:** [Août 25, 2023, 8:43 UTC](https://www.debian-fr.org/t/decouper-un-pdf-avec-pdftk-augmentation-de-taille/88704/8 "2023-08-25T08:43:53Z")

</div>

> [@josephtux](#):
>
> La fin, c’est la page 500 de l’original. Je ne comprends pas votre remarque

Justement dans ta ligne tu ne précise pas de la façon voulue il me semble :

> [@josephtux](#):
>
> J’ai voulu utiliser pdftk:  
> `pdftk gros.pdf cat 1-500 output demigros1.pdf`

Hors tu ne précise pas la fin du pdf dans l’exemple fourni on omet la page 13 avec une fin de document à 14  
`pdftk in.pdf cat 1-12 14-end output out1.pdf`

Après l’opération il est possible de compresser le contenu pour revenir à une taille acceptable.

Mais bon si pdfjam fonctionne autant continuer avec 😉

---

<div class="post-metadata">

**Author:** ![josephtux](https://www.debian-fr.org/user_avatar/www.debian-fr.org/josephtux/32/3985_2.png) [@josephtux](https://www.debian-fr.org/u/josephtux)\
**Post date:** [Août 25, 2023, 9:03 UTC](https://www.debian-fr.org/t/decouper-un-pdf-avec-pdftk-augmentation-de-taille/88704/9 "2023-08-25T09:03:45Z")

</div>

> [@Clochette](#):
>
> pdftk in.pdf cat 1-12 14-end output out1.pdf

Dans l’ exemple, il s’agit de concaténer les pages 1 à 12 puis 14 à la fin (ce qui revient à supprimer la page 13)

Dans mon application je supprime tout ce qui va de 561 à la fin, autrement dit je concatène les pages 1 à 560

le mot-clé _end_ (dans 561-end) est juste un sucre syntaxique pour ne pas avoir à chercher le numéro de la dernière page concaténée.  
Dans mon exemple (pgfmanual.pdf de 1321 pages)  
_561-end_ est la même chose que _561-1321_

C’est d’ailleurs ce que j’ai utiliser pour supprimer la première page:  
`pdtftk pgfmanual.pdf cat 2-end output pgfmanual-sans-page1.pdf`

---

<div class="post-metadata">

**Author:** ![Clochette](https://www.debian-fr.org/user_avatar/www.debian-fr.org/clochette/32/8757_2.png) [@Clochette](https://www.debian-fr.org/u/Clochette)\
**Post date:** [Août 25, 2023, 9:20 UTC](https://www.debian-fr.org/t/decouper-un-pdf-avec-pdftk-augmentation-de-taille/88704/10 "2023-08-25T09:20:40Z")

</div>

> [@josephtux](#):
>
> pdtftk pgfmanual.pdf cat 2-end output pgfmanual-sans-page1.pdf

Donc il te reste à finir le traitement par une compression pour revenir à la taille que tu souhaite je suppose si le contenu est bien celui attendu.

---

<div class="post-metadata">

**Author:** ![josephtux](https://www.debian-fr.org/user_avatar/www.debian-fr.org/josephtux/32/3985_2.png) [@josephtux](https://www.debian-fr.org/u/josephtux)\
**Post date:** [Août 25, 2023, 9:38 UTC](https://www.debian-fr.org/t/decouper-un-pdf-avec-pdftk-augmentation-de-taille/88704/11 "2023-08-25T09:38:40Z")

</div>

@Clochette  
non,  
la solution _pdfjam_ me rends le service attendu (2 pdf de moins de 10M chacun).

J’ai juste ajouté les résultats de mes tests avec _gs_ pour illustrer les possibilités différentes entre des pdf extraits ou reconstruits par _pdftk_, _pdfjam_ ou _atril_, comparaison qui pourrait servir ailleurs.
