我尝试定义一个文档的名称并在 hyperref 中使用该名称作为文件的属性等,但由于某种原因,pdftitle 和 pdfkeyowrd 选项似乎与换行符冲突,有没有办法解决这个问题,谢谢?
\documentclass[ngerman]{scrartcl}
\usepackage[english,ngerman]{babel}
\usepackage[utf8]{inputenc}
\newcommand{\Titel}{\mbox{Line 1} \\ \mbox{Line 2}}
\usepackage[ pdftex,
pdftitle={\Titel}, % -->crash
pdfkeywords={\Titel}, % -->crash
pdfpagelabels]{hyperref}
\begin{document}
\begin{flushright}
\Titel
\end{flushright}
\end{document}
答案1
.pdf
在文件的文本部分中\\
解释正确,但编译过程抱怨 PDFString 中不允许的字符。可以\texorpdfstring{\\}{^^J}
使用 TeX - 原始^^J
换行符强制执行,至少在关键字部分中将其解释为链接中断。
此外,hyperref
手册建议指定pdftitle
等。后该包已被加载,即使用命令\hypersetup
。
\documentclass[ngerman]{scrartcl}
\usepackage[english,ngerman]{babel}
\usepackage[utf8]{inputenc}
\newcommand{\Titel}{\mbox{Line 1} \texorpdfstring{\\}{^^J} \mbox{Line 2}}
\usepackage[pdftex,pdfpagelabels]{hyperref}%
\hypersetup{%
pdftitle={\Titel},
pdfkeywords={\Titel}
}
\begin{document}
\begin{flushright}
\Titel
\end{flushright}
\end{document}