From 92691b2e05a2b9d01520c72875a3db8389c2c9e4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9drix?= Date: Sat, 16 May 2026 22:22:48 +0200 Subject: [PATCH] draft: Manipuler des PDF sous Linux --- _logs/not_found.jsonl | 8 + .../draft_overlay.json | 4 + .../draft_overlay.md | 201 ++++++++++++++++++ 3 files changed, 213 insertions(+) create mode 100644 bd34b650-8713-4321-93df-fe2042d8e68c/draft_overlay.json create mode 100644 bd34b650-8713-4321-93df-fe2042d8e68c/draft_overlay.md diff --git a/_logs/not_found.jsonl b/_logs/not_found.jsonl index bc9f2e9..40e52fe 100644 --- a/_logs/not_found.jsonl +++ b/_logs/not_found.jsonl @@ -522,3 +522,11 @@ {"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: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"} +{"ts":"2026-05-16 20:12:36","url":"/informatique/hack/philip-zimmermann","ref":"","ua":"Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; PerplexityBot/1.0; +https://perplexity.ai/perplexitybot)"} +{"ts":"2026-05-16 20:12:47","url":"/informatique/linux/applications/sidebar","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:15:09","url":"/podcast/feed.xml","ref":"","ua":"PodcastAddict/v5 (+https://podcastaddict.com/; Android podcast app)"} +{"ts":"2026-05-16 20:15:10","url":"/podcast/feed.xml","ref":"","ua":"PodcastAddict/v5 (+https://podcastaddict.com/; Android podcast app)"} +{"ts":"2026-05-16 20:15:11","url":"/podcast/feed.xml","ref":"","ua":"okhttp/5.3.2"} +{"ts":"2026-05-16 20:16:52","url":"/informatique/applications/base-de-donnees/mariadb/maintenance/index","ref":"","ua":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.6422.176 Safari/537.36"} +{"ts":"2026-05-16 20:19:21","url":"/informatique/linux/commandes/lsblk","ref":"","ua":"Mozilla/5.0 (Linux; Android 6.0.1; Nexus 5X Build/MMB29P) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/148.0.7778.96 Mobile Safari/537.36 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"} +{"ts":"2026-05-16 20:22:33","url":"/informatique/applications/f3","ref":"","ua":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/127.0.6533.120 Safari/537.36"} diff --git a/bd34b650-8713-4321-93df-fe2042d8e68c/draft_overlay.json b/bd34b650-8713-4321-93df-fe2042d8e68c/draft_overlay.json new file mode 100644 index 0000000..6756fdd --- /dev/null +++ b/bd34b650-8713-4321-93df-fe2042d8e68c/draft_overlay.json @@ -0,0 +1,4 @@ +{ + "title": "Manipuler des PDF sous Linux", + "_updated_at": "2026-05-16 20:22:48" +} diff --git a/bd34b650-8713-4321-93df-fe2042d8e68c/draft_overlay.md b/bd34b650-8713-4321-93df-fe2042d8e68c/draft_overlay.md new file mode 100644 index 0000000..3934081 --- /dev/null +++ b/bd34b650-8713-4321-93df-fe2042d8e68c/draft_overlay.md @@ -0,0 +1,201 @@ +Voici une version révisée de l'article, intégrant les outils manquants, les corrections sur les projets abandonnés et quelques exemples supplémentaires. + +# Manipuler des PDF sous Linux + +Fusionner, séparer, réorganiser, annoter ou compresser un PDF : sous Linux, plusieurs outils — graphiques ou en ligne de commande — couvrent ces besoins. Voici une sélection des plus utiles aujourd'hui, avec leur installation sur Fedora et un aperçu de leur usage. + +## Vue d'ensemble des outils + +| Outil | Type | Usage principal | +|---|---|---| +| **PDF Arranger** | Graphique | Fusionner, séparer, réordonner des pages | +| **Xournal++** | Graphique | Annoter, surligner, signer | +| **LibreOffice Draw** | Graphique | Éditer le contenu (texte, images) | +| **Okular** | Graphique | Lecture avancée, annotations | +| **poppler-utils** | Ligne de commande | Conversion, extraction, fusion, découpe | +| **qpdf** | Ligne de commande | Manipulation structurelle, chiffrement, réparation | +| **Ghostscript** | Ligne de commande | Compression, conversion PDF/A, fusion | +| **OCRmyPDF** | Ligne de commande | Ajout d'une couche OCR aux PDF scannés | +| **pdftk-java** | Ligne de commande | Fusion, chiffrement, formulaires | +| **Stirling-PDF** | Web (auto-hébergé) | Suite complète d'opérations PDF | + +## PDF Arranger + +Outil graphique léger orienté glisser-déposer, idéal pour assembler ou réorganiser des pages issues de plusieurs fichiers. Successeur direct de pdfshuffler, dont il reprend l'interface, mais activement maintenu et basé sur **pikepdf**. + +Installation : +``` +sudo dnf install pdfarranger +``` + +L'interface affiche les pages sous forme de vignettes, qu'il suffit de faire glisser pour les réordonner, supprimer, faire pivoter ou regrouper avant export. On peut ouvrir plusieurs PDF simultanément et déplacer les pages de l'un à l'autre. + +> **Note** : les anciens outils **pdfshuffler** et **pdfmod** ne sont plus maintenus. pdfmod, basé sur Mono, est particulièrement à éviter aujourd'hui. PDF Arranger les remplace avantageusement. + +## Xournal++ + +Pour annoter, surligner, dessiner à main levée ou apposer une signature sur un PDF, Xournal++ est l'outil de référence. Il sauvegarde au format `.xopp` mais exporte en PDF avec les annotations intégrées. + +Installation : +``` +sudo dnf install xournalpp +``` + +## LibreOffice Draw + +Souvent négligé, Draw ouvre directement les PDF et permet d'**éditer le texte et les objets** — fonctionnalité qu'aucun autre outil de cette liste ne propose en standard. Pratique pour corriger une faute de frappe ou modifier un visuel sans avoir le fichier source. + +LibreOffice étant généralement déjà installé, aucune action supplémentaire n'est nécessaire dans la plupart des cas. + +## poppler-utils + +`poppler-utils` est une collection d'outils en ligne de commande s'appuyant sur l'API **poppler** pour manipuler les fichiers PDF. + +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 + +**Extraire tout le texte d'un document** : +``` +pdftotext document.pdf +``` + +L'option `-layout` préserve la mise en page d'origine, ce qui est précieux pour les documents contenant des tableaux : +``` +pdftotext -layout rapport.pdf +``` + +**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 : +``` +pdfunite ColoringBook-page_3.pdf ColoringBook-page_4.pdf NewColoringBook.pdf +``` + +**Convertir une page en image** (utile pour générer des aperçus) : +``` +pdftoppm -png -r 150 document.pdf apercu +``` + +## qpdf + +`qpdf` est devenu le couteau suisse de référence pour la manipulation structurelle des PDF en ligne de commande. Plus rapide et mieux maintenu que pdftk, il gère la fusion, la découpe, le chiffrement, la linéarisation et la réparation de fichiers corrompus. + +Installation : +``` +sudo dnf install qpdf +``` + +**Extraire une plage de pages** : +``` +qpdf document.pdf --pages document.pdf 3-9 -- extrait.pdf +``` + +**Fusionner plusieurs fichiers** : +``` +qpdf --empty --pages fichier1.pdf fichier2.pdf -- fusion.pdf +``` + +**Déchiffrer un PDF protégé par mot de passe** (dont vous connaissez le mot de passe) : +``` +qpdf --password=motdepasse --decrypt protege.pdf libre.pdf +``` + +**Réparer un PDF abîmé** : +``` +qpdf --check --replace-input document.pdf +``` + +## Ghostscript + +Indispensable pour **compresser un PDF** ou le convertir en PDF/A pour l'archivage. Ghostscript est généralement déjà installé comme dépendance d'autres paquets, sinon : + +``` +sudo dnf install ghostscript +``` + +**Compresser un PDF** (idéal pour réduire la taille de scans volumineux) : +``` +gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 \ + -dPDFSETTINGS=/ebook \ + -dNOPAUSE -dQUIET -dBATCH \ + -sOutputFile=compresse.pdf original.pdf +``` + +Les valeurs possibles pour `-dPDFSETTINGS` vont du moins compressé au plus compressé : `/prepress`, `/printer`, `/ebook`, `/screen`. + +## OCRmyPDF + +Pour rendre un PDF scanné **réellement utilisable** (recherche, copier-coller du texte), OCRmyPDF ajoute une couche de texte invisible au-dessus de l'image, en s'appuyant sur Tesseract. + +Installation : +``` +sudo dnf install ocrmypdf tesseract-langpack-fra +``` + +Utilisation : +``` +ocrmypdf -l fra scan.pdf scan_ocr.pdf +``` + +Le résultat reste visuellement identique, mais le texte devient sélectionnable et indexable. + +## pdftk-java + +La version Java de `pdftk` est le portage maintenu de l'outil historique, l'original ayant disparu des dépôts modernes à cause de ses dépendances obsolètes. + +Installation : +``` +sudo dnf install pdftk-java +``` + +Pour les usages courants (fusion, découpe), qpdf est généralement préférable. pdftk garde un intérêt pour la manipulation de **formulaires PDF** (remplissage par fichier FDF, aplatissement) et quelques opérations spécifiques sur les signets. + +## Stirling-PDF + +Plus récent dans le paysage, **Stirling-PDF** est une application web auto-hébergeable qui regroupe une cinquantaine d'opérations PDF derrière une interface moderne : fusion, découpe, OCR, conversion, signature, compression, suppression de pages, etc. Elle s'installe en quelques secondes via Docker. + +``` +docker run -d -p 8080:8080 stirlingtools/stirling-pdf:latest +``` + +L'interface est ensuite accessible à l'adresse `http://localhost:8080`. C'est une excellente alternative aux services en ligne pour qui souhaite garder ses documents en local. + +## Que choisir ? + +Pour résumer en quelques cas d'usage typiques : + +- **Réorganiser des pages à la souris** → PDF Arranger +- **Annoter, signer un document** → Xournal++ +- **Corriger une erreur dans le texte** → LibreOffice Draw +- **Automatiser via script** → poppler-utils et qpdf +- **Réduire la taille d'un PDF** → Ghostscript +- **Rendre un scan recherchable** → OCRmyPDF +- **Avoir une interface tout-en-un** → Stirling-PDF + +Veux-tu que je l'enregistre dans un fichier Markdown téléchargeable ? \ No newline at end of file