draft: Manipuler des PDF sous Linux ?

This commit is contained in:
Cédrix
2026-05-16 22:11:08 +02:00
parent c7342a6f54
commit 79f38fac1f
4 changed files with 101 additions and 1 deletions
+1 -1
View File
@@ -1 +1 @@
{"readable":true,"books":{"\/book\/esp":5,"\/book\/les-commandes-linux":4,"\/book\/linux-architecture-des-dossiers":3,"\/book\/la-domotique-chez-soi":2},"as":[{"asn":"","name":"LAN","country":"","hits":13019},{"asn":"8075","name":"Cloud","country":"US","hits":845},{"asn":"14618","name":"AWS EC2 (us-east-1)","country":"US","hits":420},{"asn":"24940","name":"Hetzner","country":"FI","hits":396},{"asn":"32934","name":"Meta Platforms Ireland Limited","country":"US","hits":234},{"asn":"16276","name":"OVH","country":"FR","hits":150},{"asn":"48230","name":"LLC MONOLITH.NET","country":"UA","hits":83},{"asn":"15169","name":"Google LLC","country":"US","hits":78},{"asn":"36352","name":"HostPapa","country":"US","hits":18},{"asn":"12322","name":"ProXad network \/ Free","country":"FR","hits":15},{"asn":"174","name":"Code 200, UAB","country":"FR","hits":12},{"asn":"18779","name":"EGIHosting","country":"US","hits":10},{"asn":"46261","name":"BraveWay","country":"US","hits":10},{"asn":"3209","name":"Vodafone Kabel Deutschland GmbH","country":"DE","hits":9},{"asn":"51207","name":"Free Mobile","country":"FR","hits":7},{"asn":"16509","name":"Anthropic, PBC","country":"US","hits":7},{"asn":"210743","name":"Babbar SAS","country":"FR","hits":6},{"asn":"29695","name":"Lyse Tele AS","country":"NO","hits":5},{"asn":"41281","name":"KeFF Networks Ltd","country":"SE","hits":5},{"asn":"9443","name":"Vocus Retail","country":"AU","hits":5},{"asn":"37054","name":"Telma Madagascar","country":"MG","hits":4},{"asn":"396982","name":"Google Cloud (us-east5)","country":"US","hits":4},{"asn":"209366","name":"Crawlers","country":"US","hits":4},{"asn":"58087","name":"Datalix","country":"DE","hits":4},{"asn":"132203","name":"Tencent Cloud Computing","country":"DE","hits":2},{"asn":"136907","name":"Huawei Cloud","country":"SG","hits":2},{"asn":"51167","name":"Contabo GmbH","country":"FR","hits":2}]} {"readable":true,"books":{"\/book\/esp":5,"\/book\/les-commandes-linux":4,"\/book\/linux-architecture-des-dossiers":3,"\/book\/la-domotique-chez-soi":2},"as":[{"asn":"","name":"LAN","country":"","hits":13037},{"asn":"8075","name":"Cloud","country":"US","hits":844},{"asn":"14618","name":"AWS EC2 (us-east-1)","country":"US","hits":429},{"asn":"24940","name":"Hetzner","country":"FI","hits":396},{"asn":"32934","name":"Meta Platforms Ireland Limited","country":"US","hits":246},{"asn":"16276","name":"OVH","country":"FR","hits":150},{"asn":"15169","name":"Google LLC","country":"US","hits":84},{"asn":"48230","name":"LLC MONOLITH.NET","country":"UA","hits":83},{"asn":"36352","name":"HostPapa","country":"US","hits":18},{"asn":"12322","name":"ProXad network \/ Free","country":"FR","hits":15},{"asn":"174","name":"Code 200, UAB","country":"FR","hits":12},{"asn":"18779","name":"EGIHosting","country":"US","hits":10},{"asn":"46261","name":"BraveWay","country":"US","hits":10},{"asn":"3209","name":"Vodafone Kabel Deutschland GmbH","country":"DE","hits":9},{"asn":"51207","name":"Free Mobile","country":"FR","hits":7},{"asn":"16509","name":"Anthropic, PBC","country":"US","hits":7},{"asn":"29695","name":"Lyse Tele AS","country":"NO","hits":5},{"asn":"41281","name":"KeFF Networks Ltd","country":"SE","hits":5},{"asn":"9443","name":"Vocus Retail","country":"AU","hits":5},{"asn":"37054","name":"Telma Madagascar","country":"MG","hits":4},{"asn":"396982","name":"Google Cloud (us-east5)","country":"US","hits":4},{"asn":"209366","name":"Crawlers","country":"US","hits":4},{"asn":"58087","name":"Datalix","country":"DE","hits":4},{"asn":"210743","name":"Babbar SAS","country":"FR","hits":4},{"asn":"132203","name":"Tencent Cloud Computing","country":"DE","hits":2},{"asn":"136907","name":"Huawei Cloud","country":"SG","hits":2},{"asn":"45102","name":"Alibaba.com LLC","country":"SG","hits":2},{"asn":"51167","name":"Contabo GmbH","country":"FR","hits":2}]}
+1
View File
@@ -521,3 +521,4 @@
{"ts":"2026-05-16 20:06:58","url":"/informatique/bash/rechercher","ref":"","ua":"Mozilla/5.0 (compatible; SemrushBot/7~bl; +http://www.semrush.com/bot.html)"} {"ts":"2026-05-16 20:06:58","url":"/informatique/bash/rechercher","ref":"","ua":"Mozilla/5.0 (compatible; SemrushBot/7~bl; +http://www.semrush.com/bot.html)"}
{"ts":"2026-05-16 20:08:19","url":"/informatique/linux/commandes/free","ref":"https://abonnel.fr/informatique/linux/commandes/free","ua":"Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; SleepBot/1.0; +http://sleepbot.com/) Chrome/131.0.0.0 Safari/537.36"} {"ts":"2026-05-16 20:08:19","url":"/informatique/linux/commandes/free","ref":"https://abonnel.fr/informatique/linux/commandes/free","ua":"Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; SleepBot/1.0; +http://sleepbot.com/) Chrome/131.0.0.0 Safari/537.36"}
{"ts":"2026-05-16 20:08:23","url":"/electronique/esp/wifi-manager","ref":"","ua":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/147.0.0.0 Safari/537.36"} {"ts":"2026-05-16 20:08:23","url":"/electronique/esp/wifi-manager","ref":"","ua":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/147.0.0.0 Safari/537.36"}
{"ts":"2026-05-16 20:09:06","url":"/informatique/cfp/recapitulatif_des_codes_gsm","ref":"https://www.google.com/","ua":"Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/148.0.0.0 Mobile Safari/537.36"}
@@ -0,0 +1,4 @@
{
"title": "Manipuler des PDF sous Linux",
"_updated_at": "2026-05-16 20:11:08"
}
@@ -0,0 +1,95 @@
# Manipuler des PDF sous Linux
Fusionner, séparer, réorganiser ou extraire le contenu d'un PDF : sous Linux, plusieurs outils — graphiques ou en ligne de commande — couvrent ces besoins. Voici une sélection des plus utiles, avec leur installation sur Fedora et un aperçu de leur usage.
## Vue d'ensemble des outils
| Outil | Type | Usage principal |
|---|---|---|
| **pdfshuffler** | Graphique | Fusionner, séparer, réordonner des pages |
| **pdfmod** | Graphique | Modifier la structure d'un PDF |
| **poppler-utils** | Ligne de commande | Conversion, extraction, fusion, découpe |
| **pdftk** | Ligne de commande | Manipulation avancée (fusion, chiffrement, formulaires) |
| **PDF Chain** | Graphique | Interface graphique pour pdftk |
## pdfmod
Application graphique simple pour réorganiser, supprimer ou faire pivoter les pages d'un PDF.
![](ico_pdfmod.png)
Installation :
```
sudo dnf install pdfmod
```
L'installation tire quelques dépendances Mono/GTK# (`gtk-sharp2`, `gnome-sharp`, `poppler-sharp`, `hyena`, `nunit`), soit environ 8 Mo une fois installé.
## pdfshuffler
Outil graphique léger orienté glisser-déposer, idéal pour assembler ou réorganiser des pages issues de plusieurs fichiers.
![](ico_pdfshuffler.png)
Installation :
```
sudo dnf install pdfshuffler
```
Dépendances principales : `pyPdf` et `pypoppler`.
### Utilisation
L'interface affiche les pages sous forme de vignettes, qu'il suffit de faire glisser pour les réordonner, supprimer ou regrouper avant export.
![](pdfshuffler_capture.png)
## poppler-utils
`poppler-utils` est une collection d'outils en ligne de commande s'appuyant sur l'API **poppler** pour manipuler les fichiers PDF.
![](ico_poppler.gif)
Installation :
```
sudo dnf install poppler-utils
```
### Les commandes fournies
- **pdfdetach** — extrait les documents embarqués d'un PDF
- **pdffonts** — liste les polices utilisées
- **pdfimages** — extrait les images à leur résolution native
- **pdfinfo** — affiche les métadonnées du document
- **pdfseparate** — extrait des pages individuelles
- **pdftocairo** — convertit des pages en formats vectoriels ou bitmap via cairo
- **pdftohtml** — convertit un PDF en HTML en conservant la mise en forme
- **pdftoppm** — convertit une page PDF en bitmap
- **pdftops** — convertit un PDF au format PostScript imprimable
- **pdftotext** — extrait tout le texte
- **pdfunite** — fusionne plusieurs PDF
### Exemples pratiques
Les deux commandes les plus utiles au quotidien sont `pdfseparate` (découpe) et `pdfunite` (fusion).
**Extraire toutes les pages d'un document** dans des fichiers séparés :
```
pdfseparate ColoringBook.pdf ColoringBook-page_%d.pdf
```
**Extraire une plage de pages** (ici les pages 3 à 9) :
```
pdfseparate -f 3 -l 9 ColoringBook.pdf ColoringBook-page_%d.pdf
```
**Fusionner plusieurs PDF** en un seul document (par exemple les pages 3 et 4 extraites précédemment) :
```
pdfunite ColoringBook-page_3.pdf ColoringBook-page_4.pdf NewColoringBook.pdf
```