![使用 Luatex 嵌入 PDF 元数据](https://linux22.com/image/429698/%E4%BD%BF%E7%94%A8%20Luatex%20%E5%B5%8C%E5%85%A5%20PDF%20%E5%85%83%E6%95%B0%E6%8D%AE.png)
我正在尝试将元数据添加到我的.tex 文档编译生成的 pdf 中。
我理解这是软件包提供的功能hyperref
,但我无法使其工作,因为我的字段pdftitle
和pdfauthor
不pdfcreator
匹配。我的日志中出现以下错误:
- "Option `pdftitle' has already been used,(hyperref) setting the option has no effect"
- "Option `pdfauthor' has already been used,(hyperref) setting the option has no effect"
- "Option `pdfcreator' has already been used,(hyperref) setting the option has no effect"
我不知道这种情况可能发生在哪里,因为我没有在文档中明确设置它。
这是我的 MWE 代码,用于说明我尝试嵌入的元数据类型。
\ExplSyntaxOn
%%%% Definition of the title and the author name
\str_const:Nn \c_authorName_str {Firstname~NAME}
\title{CV \str_use:N \c_authorName_str}
\author{\str_use:N \c_authorName_str}
%%%% Call to hyperref juste before to initialize the document.
\usepackage[unicode]{hyperref}
% \usepackage[unicode,pdftitle={CV \str_use:N \c_authorName_str},pdfauthor={\str_use:N \c_authorName_str},pdfcreator={\str_use:N \c_authorName_str}]{hyperref}
\AtBeginDocument{
\hypersetup{
pdftitle={CV \str_use:N \c_authorName_str},
pdfauthor={\str_use:N \c_authorName_str},
pdfcreator={\str_use:N \c_authorName_str}
}
}
\ExplSyntaxOff
%%%%% CONTENU
\begin{document}
%%%% CV Header
\ExplSyntaxOn
\name{\str_use:N \c_authorName_str}
\ExplSyntaxOff
正如我在标题中所说,我正在用引擎编译我的文档Luatex
。
答案1
这是对我有用的设置。使用 中的命令不起作用\hypersetup
。
% !TeX TS-program = lualatex
\documentclass[12pt,a4paper]{book}
\usepackage[
hyperindex=true, % Makes the page numbers of index entries into hyperlinks
bookmarks=true,% PDF-specific display options
]{hyperref}
\hypersetup{
pdftitle={Integrate pdf metadata while using the Luatex engine},
pdfauthor={impishwhite},
pdfsubject={pdf metadata},
pdfkeywords={hyperref},
pdfcreator={me again},
bookmarksnumbered=true,
bookmarksopen=true,
linktocpage=true, % in the table of contents, make page numbers rather (than associated text) into hyperlinks
}
\author{impishwhite}
\title{Integrate pdf metadata while using the Luatex engine}
\begin{document}
\maketitle
\chapter{One}
\chapter{Two}
\end{document}
这是用 crobat reader 做的
答案2
问题是,我的文档中同时使用了两个具有 pdf 元数据配置功能的包。事实上,我同时使用了“hyperref”和“pdfx”。
调用 pdfx 包触发的元数据配置机制阻碍了 hyperref 包提供的元数据配置的可能性。
删除 pdfx 包的使用会使问题消失,并且我的代码无需进一步修改就能正常工作。
感谢您的帮助。