Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
ressource:logiciel:manipulation_pdf:start [2025/01/16 22:34] emoc [Optimiser un pdf pour réduire la taille du fichier (avec ghostscript)] |
ressource:logiciel:manipulation_pdf:start [2025/10/14 10:59] (Version actuelle) emoc [Posters] |
||
---|---|---|---|
Ligne 17: | Ligne 17: | ||
**Autres logiciels utiles** | **Autres logiciels utiles** | ||
+ | * **pdfposter** (https://pdfposter.readthedocs.io/en/stable/) à installer avec ''sudo apt install pdfposter'' | ||
* PDFtk (basé sur java) https://www.pdflabs.com/tools/pdftk-the-pdf-toolkit/ | * PDFtk (basé sur java) https://www.pdflabs.com/tools/pdftk-the-pdf-toolkit/ | ||
* PDFsam (basé sur java) https://pdfsam.org/ (interface graphique, payant) | * PDFsam (basé sur java) https://pdfsam.org/ (interface graphique, payant) | ||
Ligne 30: | Ligne 31: | ||
**-f** (first) : première page à extraire \\ | **-f** (first) : première page à extraire \\ | ||
**-l** (last) : dernière page à extraire | **-l** (last) : dernière page à extraire | ||
+ | |||
+ | **Extraire une page et l'enregistrer en pdf dans un autre format** | ||
+ | <code bash> | ||
+ | #!/bin/bash | ||
+ | |||
+ | mkdir -p output | ||
+ | PAGES=$(pdfinfo document.pdf | awk '/Pages:/ {print $2}') | ||
+ | for i in $(seq 1 $PAGES); do | ||
+ | pdfjam document.pdf "$i" --papersize '{297mm,420mm}' --outfile output/page_$i.pdf | ||
+ | done | ||
+ | </code> | ||
+ | |||
+ | ===== Recomposer un document pdf à partir de pages extraites d'un autre document ===== | ||
+ | |||
+ | pdfjam doc1.pdf 1,3,5,7,9,11,13,15,17,19 doc2.pdf 7,11,17,19 --outfile doc_montage.pdf | ||
+ | | ||
+ | Pour forcer en paysage | ||
+ | |||
+ | pdfjam doc1.pdf 1,3,5 doc2.pdf 1,9 --landscape --outfile doc_montage.pdf | ||
===== Divers ===== | ===== Divers ===== | ||
Ligne 40: | Ligne 60: | ||
**--frame true** : cadre noir autour de la page originale | **--frame true** : cadre noir autour de la page originale | ||
+ | ==== Posters ==== | ||
+ | |||
+ | **Comment découper un pdf au format A1 en 4 morceaux format A3 ?** | ||
+ | # 20251013 Debian 12 @ tenko | ||
+ | # sudo apt install pdfposter | ||
+ | pdfposter -mA3 -pA1 input.pdf output.pdf | ||
+ | |||
+ | **Agrandir un format A4 en 4 morceaux format A3** | ||
+ | # UNTESTED | ||
+ | pdfposter -mA3 -pA4 -x2 -y2 input.pdf output.pdf | ||
+ | | ||
+ | ==== Remontage ==== | ||
+ | |||
+ | **Passer de 12 pages A4 paysage à 6 pages A3 portraits** | ||
+ | pdfjam input_A4.pdf --nup 1x2 --paper a3paper --noautoscale true --outfile output_A3.pdf | ||
+ | |||
+ | **12 pages A4 portrait vers 6 pages A3 paysage** | ||
+ | pdfjam input_A4.pdf --nup 2x1 --landscape --paper a3paper --outfile montage_A3.pdf | ||
+ | ==== Convertir au format de papier A4 ==== | ||
+ | |||
+ | Un pdf réalisé avec convert (par exemple) ne sera pas forcèment dans un format imprimable facilement. | ||
+ | |||
+ | pdfjam --outfile out.pdf --paper a4paper in.pdf | ||
+ | pdfjam --paper a4paper --outfile out.pdf --landscape in.pdf | ||
+ | ====Ajouter des pages vides ==== | ||
+ | |||
+ | pdfjam document.pdf '1-111,{}' -o document_complet.pdf | ||
+ | |||
+ | Ici, une page vide est ajoutée après la page 111 du document original, on peut moduler (par ex. '1,{},3-4,{},5-' ) cf. https://equa.space/notes/pdfjam/ | ||
====Infos sur les polices d'un document==== | ====Infos sur les polices d'un document==== | ||
Ligne 56: | Ligne 105: | ||
-dEncodeMonoImages=false \ | -dEncodeMonoImages=false \ | ||
</code> | </code> | ||
+ | |||
+ | [[ressource:logiciel:imagemagick:start#petits_trucs_pratiques|Autre solution avec imagemagick]] | ||
+ | ==== Lister toutes les images d'un pdf ==== | ||
+ | |||
+ | Avec leurs caractéristiques (colorspace, width, height, x-ppi, y-ppi, etc.) | ||
+ | pdfimages -list document.pdf | ||
+ | |||
+ | ==== Extraire toutes les images d'un pdf ==== | ||
+ | |||
+ | pdfimages -all document.pdf /chemin/absolu/racine | ||
+ | **-all** : conserver les formats d'origine | ||
+ | |||
+ | Il faut __absolument__ indiquer un chemin absolu valide! | ||
==== Conversion de profil de couleur ==== | ==== Conversion de profil de couleur ==== | ||
+ | |||
+ | (KO par abandon) | ||
On dirait bien que c'est un sujet complexe... Avec imagemagick on peut obtenir des informations sur le profil icc utilisé : | On dirait bien que c'est un sujet complexe... Avec imagemagick on peut obtenir des informations sur le profil icc utilisé : | ||
identify -format '%[colorspace]' document.pdf | identify -format '%[colorspace]' document.pdf | ||
- | Mais d'autres lectures indiquent que chaque élément d'un pdf peuvent avoir des profils associés différents | + | Mais d'autres lectures indiquent que chaque élément d'un pdf peuvent avoir des profils associés différents.\\ |
- | Je fais un essai avec | + | Pour une conversion en CMJN, je fais un essai avec |
gs -o document_cmjn.pdf -sDEVICE=pdfwrite -sProcessColorModel=DeviceCMYK -sColorConversionStrategy=CMYK -sColorConversionStrategyForImages=CMYK document.pdf | gs -o document_cmjn.pdf -sDEVICE=pdfwrite -sProcessColorModel=DeviceCMYK -sColorConversionStrategy=CMYK -sColorConversionStrategyForImages=CMYK document.pdf | ||
- | Mais identify le détecte toujours comme du sRGB ... | + | Mais identify le détecte toujours comme du sRGB ... \\ |
+ | En revanche avec ''pdfimages -list document_cmjn.pdf'' on peut voir que les images sont bien reconnues comme étant en CMJN | ||
+ | |||
+ | Test avec ghostscript et un profil ICC | ||
+ | gs -o test_fogra.pdf -sDEVICE=pdfwrite -dOverrideICC=true -sOutputICCProfile=Coated_Fogra39L_VIGC_300.icc -sColorConversionStrategy=CMYK -sColorConversionStrategyForImages=CMYK -dProcessColorModel=/DeviceCMYK -dRenderIntent=3 -dDeviceGrayToK=true document.pdf | ||
+ | |||
+ | Mais ghostscript transforme toutes les images en JPEG... \\ | ||
+ | nb : un pdf ne peut pas contenir d'iamges au format PNG. | ||
+ | |||
+ | Je laisse tomber pour cette fois | ||
+ | |||
+ | ==== Reconnaissance de caractères ==== | ||
+ | |||
+ | Avec [[ressource:logiciel:tesseract:start|Tesseract]] | ||
+ | |||
+ | ==== Convertir un pdf en image et vice-versa ==== | ||
+ | Avec [[ressource:logiciel:imagemagick:start|Imagemagick]] | ||
===== Ressources ===== | ===== Ressources ===== | ||
Télécharger des profils de couleur (dont Fogra39) : https://www.color.org/registry/index.xalter | Télécharger des profils de couleur (dont Fogra39) : https://www.color.org/registry/index.xalter |