Je compile sans erreur le document suivant sur Manjaro/TexLive 2019 en ligne de commande ou avec TexStudio et les champs PDF indiqués (pdfauthor et pdftitle) figurent bien dans les propriétés du document telles que les affichent Okular, Evince ou Adobe Reader.

Ouvrir dans l'éditeur Overleaf
\documentclass{article}
\usepackage[unicode]{hyperref}

\title{Titre du document}
\author{Son auteur}
\date{12 mars 2020}

\hypersetup{%
    pdfauthor={L’auteur},
    pdftitle={Titre du document}
}
\begin{document}
    \maketitle
    Toute l’histoire du monde peut se résumer à quelques galipettes accomplies avec plus ou moins d’imagination par des êtres généralement oublieux de leur condition mortelle.
\end{document}

Il me faut maintenant insérer des champs particuliers au sein des propriétés du PDF, comme un sous-titre ou l’adresse de l’auteur, etc. Le paquet hyperxmp paraît tout indiqué pour ce faire. Je modifie donc le document comme suit :

Ouvrir dans l'éditeur Overleaf
\documentclass{article}
\usepackage{hyperxmp}
\usepackage[unicode]{hyperref}

\title{Titre du document}
\author{Son auteur}
\date{12 mars 2020}

\hypersetup{%
    pdfauthor={L’auteur},
    pdftitle={Titre du document},
    pdfsubtitle={Son sous-titre}
}
\begin{document}
    \maketitle
    Toute l’histoire du monde peut se résumer à quelques galipettes accomplies avec plus ou moins d’imagination par des êtres généralement oublieux de leur condition mortelle.
\end{document}

Pareillement, la compilation se fait sans erreur, mais cette fois-ci, plus aucune propriété n’apparaît dans les champs lisibles, que ce soit avec Okular, Evince ou Adobe Reader. Je tente des compilations successives et répétées avec lualatex, latex, pdflatex, qui toutes aboutissent sans erreur, mais toujours pas de propriétés affichées. Pourtant, l’analyse du fichier PDF avec exiftool montre que les propriétés sont présentes, même si le champ author a été déplacé vers creator :

Ouvrir dans l'éditeur Overleaf
ExifTool Version Number         : 11.85
File Name                       : test-hyperref-hyperxml.pdf
Directory                       : .
File Size                       : 25 kB
File Modification Date/Time     : 2020:03:13 04:49:22+01:00
File Access Date/Time           : 2020:03:12 11:50:37+01:00
File Inode Change Date/Time     : 2020:03:13 04:49:22+01:00
File Permissions                : rw-r--r--
File Type                       : PDF
File Type Extension             : pdf
MIME Type                       : application/pdf
Linearized                      : No
Page Count                      : 1
Page Mode                       : UseOutlines
Schemas Schema                  : XMP Media Management Schema
Schemas Prefix                  : xmpMM
Schemas Namespace URI           : http://ns.adobe.com/xap/1.0/mm/
Schemas Property Name           : DocumentID
Schemas Property Value Type     : URI
Schemas Property Category       : internal
Schemas Property Description    : UUID based identifier for all versions and renditions of a document
Keywords                        : 
PDF Version                     : 1.5
Format                          : application/pdf
Title                           : Titre du document
Publisher                       : 
Date                            : 2020:03:13 04:49:21+01:00
Language                        : 
Type                            : Text
Creator                         : L’auteur
Source                          : test-hyperref-hyperxml.tex
Create Date                     : 2020:03:13 04:49:21+01:00
Modify Date                     : 2020:03:13 04:49:21+01:00
Metadata Date                   : 2020:03:13 04:49:21+01:00
Creator Tool                    : LaTeX with hyperref
Document ID                     : uuid:8d7aea33-33e4-4c4c-81dc-eaea888d7a39
Instance ID                     : uuid:00a8d182-6754-46c4-9395-f7a8d1dc4c9b
Compliance Profile              : Three
Subtitle                        : Son sous-titre
Producer                        : LuaTeX-1.10.0
Trapped                         : False
PTEX Full Banner                : This is LuaTeX, Version 1.10.0 (TeX Live 2019)

J’ai joué avec toutes (enfin presque) options disponibles de hyperref et hyperxmp et inversé l’ordre de leur appel (hyperref avant hyperxmp et inversement) sans que le résultat change.

Est-ce qu’il s’agit du comportement normal du paquet hyperxmp ? Y a-t-il une option subtile que je devrais utiliser ?

Posée 13 Mar, 06:01

webertex's gravatar image

webertex
632
Taux d'acceptation : 0%

Modifiée 13 Mar, 11:15

Bernard's gravatar image

Bernard
4.4k15

Peut-être faut-il effacer les fichiers intermédiaires créés par hyperref entre ces 2 compilations? (avec latexmk, l'option -g le fait). Cette solution me sort souvent d'affaire.

(13 Mar, 16:13) joseph-tux joseph-tux's gravatar image

Déjà essayé, mais non, ça ne fonctionne pas davantage. Après quelques lectures ici et là (notamment chez Adobe), il apparaît que les metadata écrites par hyperxmp sont au format… xmp, justement, et que le package supprime tout bonnement les tag au format pdf pour les remplacer par des xmp. Ce qui est une sorte d’abérration, je trouve…

(14 Mar, 18:02) webertex webertex's gravatar image
2

Je pense qu'il s'agit d'un bug de hyperxmp puisque la documentation de ce package indique (traduction maison) : « hyperxmp s'intègre parfaitement à hyperref et ne nécessite pratiquement aucune modification d'un document qui spécifie déjà des métadonnées via les mécanismes de hyperref. ». Ça vaudrait le coup de faire un rapport à son auteur, notamment parce que la TeX Live 2020 va bientôt être figée.

(16 Mar, 17:13) denis ♦♦ denis's gravatar image
2

C’est bien ce que je pense, mais ça me paraît tellement énorme que j’ai du mal à y croire…

Cependant, comme vous le conseillez, je vais faire un petit rapport (trés humble : je suis loin de comprendre tout aux arcanes mystérieuses de Tex/LaTeX) à l’auteur…

(17 Mar, 04:13) webertex webertex's gravatar image

Je pense qu'il ne s'agit pas d'un bug. La situation semble en fait assez compliquée :

  • il y a deux façons de mettre des metadata dans du PDF (voir ici pour plus de détails). Le package hyperref utilise la première façon (« info dico », qui n'a que les 4 champs Author, Title, Subject, Keywords) ; le package hyperxmp utilise la deuxième (xmp). A priori, peu de lecteurs PDF savent lire les métadonnées xmp.
  • les deux façons ne sont pas compatibles, comme expliqué dans la doc de hyperxmp (note 1 page 10) : le champs Author est une chaîne de caractères dans le format « info dico », mais c'est une liste dans « xmp ». Du coup, hyperxmp ne conserve pas les métadonnées « info dico » par défaut, mais comme l'indique la doc, en ajoutant l'option keeppdfinfo à \hypersetup, on peut conserver les données « info dico ».

Un exemple :

Ouvrir dans l'éditeur Overleaf
  \hypersetup{
      keeppdfinfo,
      pdfauthor={L'auteur},
      pdftitle={Titre du document},
      pdfsubtitle={Son sous-titre}
  }

Cela permet d'avoir les deux types de métadonnées. Subtitle ne sera cependant affiché que si le lecteur comprend les données xmp...

Lien permanent

Publiée 19 Mar, 11:19

nmarkey's gravatar image

nmarkey
8607
Taux d'acceptation : 38%

Modifiée 19 Mar, 16:14

Pathe's gravatar image

Pathe ♦♦
6.0k4101193

Oui ! C’est exactement ce que m’a fait remarquer l’auteur du paquet hyperxmp à qui j’ai écrit et qui vient de prendre le temps, comme vous le faites, de me détailler sa propre documentation.

Merci !

(19 Mar, 15:31) webertex webertex's gravatar image
1

@webertex Comme la réponse de @nmarkey règle votre problème, merci de l'indiquer en cliquant sur l'icône en forme de coche « Marque cette réponse comme acceptée ». Et cliquer sur l'icône en forme de pouce levé « J'aime cette publication » ne peut pas faire de mal non plus :)

(19 Mar, 16:05) denis ♦♦ denis's gravatar image
1

Voilà, c’est fait.

(19 Mar, 16:15) webertex webertex's gravatar image
Votre réponse
(dés)activer l'aperçu

Suivre cette question

Par courriel :

Une fois que vous serez enregistré, vous pourrez souscrire à n'importe quelle mise à jour ici

Par flux RSS :

Réponses

Réponses et commentaires

Bases de Markdown

  • *italique* ou _italique_
  • **gras** ou __gras__
  • Lien ::[texte](http://url.com/ "Titre ")
  • Image : ?![alt texte](/path/img.jpg "Titre ")
  • Liste numérotée : 1. Foo 2. Bar
  • Pour ajouter un passage à la ligne, ajoutez deux espaces à l'endroit où vous souhaitez que la ligne commence.
  • Les balises HTML de base sont également prises en charge.

Mots-clés de la question :

×17
×17
×1
×1

Question posée : 13 Mar, 06:01

Question vue : 527 fois

Dernière mise à jour : 19 Mar, 16:15