Manipulation de fichiers pdf en ligne de commande

Tout ce qui concerne le langage LaTeX et ses variantes. Ce langage est supporté sur le forum via les balises tex.

Modérateur : gdm_tex

Règles du forum
Merci de soigner la rédaction de vos messages et de consulter ce sujet avant de poster. Pensez également à utiliser la fonction recherche du forum.
MB
Administrateur
Administrateur
Messages : 7264
Inscription : samedi 28 mai 2005, 14:23
Statut actuel : Enseignant

Manipulation de fichiers pdf en ligne de commande

Message par MB »

MB. (rejoignez pCloud afin d'obtenir 10Go de stockage en ligne gratuits)
Pas d'aide en message privé. Merci de consulter ce sujet avant de poster votre premier message.
MB
Administrateur
Administrateur
Messages : 7264
Inscription : samedi 28 mai 2005, 14:23
Statut actuel : Enseignant

Obtenir des informations sur un fichier pdf

Message par MB »

  • Afficher les métadonnées du fichier src.pdf avec exiftool ...

    Code : Tout sélectionner

    $ exiftool src.pdf
  • Afficher des informations générales sur le fichier src.pdf avec pdfinfo ... On retrouve certaines informations présentes dans les métadonnées, mais on obtient quelques informations supplémentaires, dont le format de page (Page size). La seconde commande permet d'obtenir des informations spécifiques sur le format des pages 1 à 3.

    Code : Tout sélectionner

    $ pdfinfo src.pdf
    $ pdfinfo -f 1 -l 3 src.pdf
  • Lister toutes les fontes utilisées par le fichier src.pdf avec pdffonts ... On pourra par exemple identifier les fontes embarquées dans le fichier pdf (emb=yes). Il est également possible d'utiliser les options -f et -l pour limiter les pages à examiner.

    Code : Tout sélectionner

    $ pdffonts src.pdf
  • Lister toutes les images contenues dans le fichier src.pdf avec pdfimages ... Il est également possible d'utiliser les options -f et -l pour limiter les pages à examiner.

    Code : Tout sélectionner

    $ pdfimages -list src.pdf
MB. (rejoignez pCloud afin d'obtenir 10Go de stockage en ligne gratuits)
Pas d'aide en message privé. Merci de consulter ce sujet avant de poster votre premier message.
MB
Administrateur
Administrateur
Messages : 7264
Inscription : samedi 28 mai 2005, 14:23
Statut actuel : Enseignant

Apporter des modifications à un fichier pdf

Message par MB »

  • Modifier une métadonnée du fichier src.pdf avec exiftool ... La commande suivante permet par exemple de modifier le titre du fichier.

    Code : Tout sélectionner

    $ exiftool -Title="Nouveau titre" src.pdf
  • Compresser un fichier src.pdf avec ghostscript ... L'option -dPDFSETTINGS=/screen correspond à la compression la plus élevée, mais on peut utiliser les options /ebook, /printer ou /prepress qui présentent une qualité de plus en plus élevée. Voir ici pour plus de détails sur cette option.

    Code : Tout sélectionner

    $ gs -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -dPDFSETTINGS=/screen -sOutputFile=dst.pdf src.pdf
  • Embarquer toutes les fontes du fichier src.pdf avec ghostscript ... Comme indiqué ici, on a par défaut -dEmbedAllFonts=true, sauf lorsque -dPDFSETTINGS=/screen (ce qui n'est pas le cas dans le commande suivante).

    Code : Tout sélectionner

    $ gs -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -dEmbedAllFonts=true -sOutputFile=dst.pdf src.pdf
  • Redimensionner le fichier src.pdf au format A4 avec ghostscript ... Dans la seconde commande, l'option -dFIXEDMEDIA va fixer l'orientation des pages (si elles n'avaient pas déjà toutes la même).

    Code : Tout sélectionner

    $ gs -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -sPAPERSIZE=a4 -dFitPage -sOutputFile=dst.pdf src.pdf
    $ gs -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -sPAPERSIZE=a4 -dFitPage -dFIXEDMEDIA -sOutputFile=dst.pdf src.pdf
  • Linéariser le fichier src.pdf avec ghostscript ...

    Code : Tout sélectionner

    $ gs -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -dFastWebView -sOutputFile=dst.pdf src.pdf
  • Linéariser le fichier src.pdf avec qpdf ...

    Code : Tout sélectionner

    qpdf src.pdf --linearize dst.pdf
MB. (rejoignez pCloud afin d'obtenir 10Go de stockage en ligne gratuits)
Pas d'aide en message privé. Merci de consulter ce sujet avant de poster votre premier message.
MB
Administrateur
Administrateur
Messages : 7264
Inscription : samedi 28 mai 2005, 14:23
Statut actuel : Enseignant

Fusionner des fichiers pdf

Message par MB »

  • Fusionner les fichiers src-1.pdf et src-2.pdf avec ghostscript ...

    Code : Tout sélectionner

    gs -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -sOUTPUTFILE=dst.pdf src-01.pdf src-02.pdf
  • Fusionner les fichiers src-1.pdf et src-2.pdf avec qpdf ... La première commande ne va conserver aucune métadonnée, alors que la deuxième va conserver celles du fichier src-1.pdf et que la troisième va conserver celles du fichier src-2.pdf.

    Code : Tout sélectionner

    $ qpdf --empty --pages src-1.pdf src-2.pdf -- dst.pdf
    $ qpdf src-1.pdf --pages . src-2.pdf -- dst.pdf
    $ qpdf src-2.pdf --pages src-1.pdf . -- dst.pdf
  • Fusionner les fichiers src-1.pdf et src-2.pdf avec pdfunite ... La syntaxe est très simple, mais le fichier obtenu est plus lourd que ceux obtenus via les méthodes précédentes.

    Code : Tout sélectionner

    $ pdfunite src-1.pdf src-2.pdf dst.pdf
MB. (rejoignez pCloud afin d'obtenir 10Go de stockage en ligne gratuits)
Pas d'aide en message privé. Merci de consulter ce sujet avant de poster votre premier message.
MB
Administrateur
Administrateur
Messages : 7264
Inscription : samedi 28 mai 2005, 14:23
Statut actuel : Enseignant

Scinder un fichier pdf

Message par MB »

  • Extraire les pages 3 à 5 du fichier src.pdf avec ghostscript ...

    Code : Tout sélectionner

    $ gs -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -dFirstPage=3 -dLastPage=5 -sOUTPUTFILE=dst.pdf src.pdf
  • Extraire les pages 3 à 5 du fichier src.pdf avec qpdf ... La première commande ne va conserver aucune métadonnée, alors que la deuxième va conserver celles du fichier src1.pdf.

    Code : Tout sélectionner

    $ qpdf --empty --pages src.pdf 3-5 -- dst.pdf
    $ qpdf src.pdf --pages . 3-5 -- dst.pdf
MB. (rejoignez pCloud afin d'obtenir 10Go de stockage en ligne gratuits)
Pas d'aide en message privé. Merci de consulter ce sujet avant de poster votre premier message.
MB
Administrateur
Administrateur
Messages : 7264
Inscription : samedi 28 mai 2005, 14:23
Statut actuel : Enseignant

Extraire les images d'un fichier pdf ou en insérer dans un fichier pdf

Message par MB »

  • Extraire toutes les images du fichier src.pdf avec pdfimages ... Le nom de fichier des images extraites par la commande suivante va débuter par img et sera suivi d'un numéro.

    Code : Tout sélectionner

    $ pdfimages -all dst.pdf img
  • Insérer les images img-1.png et img-2.png dans le fichier dst.pdf avec montage ... L'option -page a4 permet de faire sorte que le fichier dst.pdf soit au format a4, alors que l'option -gravity center permet de centrer le contenu de la page, que l'option -tile 1x indique que les images sont alignées verticalement et que l'option -geometry 500x+0+5 permet de fixer la largeur des images à 500 pixels et d'ajouter un espace de 5 pixels en haut et en bas de chaque image.

    Code : Tout sélectionner

    $ montage img-1.png img-2.png -page a4 -gravity center -tile 1x -geometry 500x+0+5 dst.pdf
MB. (rejoignez pCloud afin d'obtenir 10Go de stockage en ligne gratuits)
Pas d'aide en message privé. Merci de consulter ce sujet avant de poster votre premier message.
MB
Administrateur
Administrateur
Messages : 7264
Inscription : samedi 28 mai 2005, 14:23
Statut actuel : Enseignant

Transformer un fichier pdf en fichier texte ou en image

Message par MB »

  • Transformer le fichier src.pdf en fichier texte avec pdftotext ... La commande suivante va créer un fichier src.txt et l'option -layout tente de préserver la disposition des éléments.

    Code : Tout sélectionner

    $ pdftotext -layout src.pdf
  • Transformer le fichier src.pdf en fichiers png avec pdftopng ... Les commandes suivantes vont convertir chaque page du fichier src.pdf en un fichier png dont le nom va débuter par img sera suivi d'un numéro. L'option -gray permet de générer une image en niveaux de gris.

    Code : Tout sélectionner

    $ pdftopng src.pdf img
    $ pdftopng -gray src.pdf img
MB. (rejoignez pCloud afin d'obtenir 10Go de stockage en ligne gratuits)
Pas d'aide en message privé. Merci de consulter ce sujet avant de poster votre premier message.
MB
Administrateur
Administrateur
Messages : 7264
Inscription : samedi 28 mai 2005, 14:23
Statut actuel : Enseignant

Rechercher du texte dans des fichiers pdf

Message par MB »

  • Rechercher une chaîne de caractères dans des fichiers pdf avec pdfgrep ... La première va rechercher la chaine de caractères 'chaîne à trouver' dans tous les fichiers du répertoire courant en ignorant la case (-i) et en indiquant le numéro de la page (-n). La seconde commande va également explorer les sous-dossiers du répertoire courant (-r).

    Code : Tout sélectionner

    $ pdfgrep -in 'chaîne à trouver' *.pdf
    $ pdfgrep -inr 'chaîne à trouver' *.pdf
MB. (rejoignez pCloud afin d'obtenir 10Go de stockage en ligne gratuits)
Pas d'aide en message privé. Merci de consulter ce sujet avant de poster votre premier message.
marco56
Utilisateur éprouvé
Utilisateur éprouvé
Messages : 889
Inscription : jeudi 25 novembre 2010, 22:10

Re: Manipulation de fichiers pdf en ligne de commande

Message par marco56 »

Merci !
Si cela intéresse qqun, j'ai fait un fichier latex de la page pour afficher un pdf sur mon bureau. :)
MB
Administrateur
Administrateur
Messages : 7264
Inscription : samedi 28 mai 2005, 14:23
Statut actuel : Enseignant

Re: Manipulation de fichiers pdf en ligne de commande

Message par MB »

marco56 a écrit : jeudi 29 octobre 2020, 00:32 Si cela intéresse qqun, j'ai fait un fichier latex de la page pour afficher un pdf sur mon bureau. :)
C'est-à-dire que tu as fait une version pdf pour consulter hors ligne ?
MB. (rejoignez pCloud afin d'obtenir 10Go de stockage en ligne gratuits)
Pas d'aide en message privé. Merci de consulter ce sujet avant de poster votre premier message.
marco56
Utilisateur éprouvé
Utilisateur éprouvé
Messages : 889
Inscription : jeudi 25 novembre 2010, 22:10

Re: Manipulation de fichiers pdf en ligne de commande

Message par marco56 »

Oui, c'est cela.
MB
Administrateur
Administrateur
Messages : 7264
Inscription : samedi 28 mai 2005, 14:23
Statut actuel : Enseignant

Re: Manipulation de fichiers pdf en ligne de commande

Message par MB »

D'accord. Il ne s'agit cependant que d'un premier jet et il est fort possible que j'y apporte quelques évolutions/corrections. :)
MB. (rejoignez pCloud afin d'obtenir 10Go de stockage en ligne gratuits)
Pas d'aide en message privé. Merci de consulter ce sujet avant de poster votre premier message.
marco56
Utilisateur éprouvé
Utilisateur éprouvé
Messages : 889
Inscription : jeudi 25 novembre 2010, 22:10

Re: Manipulation de fichiers pdf en ligne de commande

Message par marco56 »

Bien sûr. Article très intéressant.
Pour info, je compile via la châine latex->dvi->ps->pdf.
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
MB
Administrateur
Administrateur
Messages : 7264
Inscription : samedi 28 mai 2005, 14:23
Statut actuel : Enseignant

Re: Manipulation de fichiers pdf en ligne de commande

Message par MB »

Merci. J'ai modifié ton message pour mettre le code directement dans une pièce jointe .tex.
MB. (rejoignez pCloud afin d'obtenir 10Go de stockage en ligne gratuits)
Pas d'aide en message privé. Merci de consulter ce sujet avant de poster votre premier message.