以下文档给出了错误
! Argument of \MT@res@a has an extra }.
错误的根源是重音命令\"L
(这没有多大意义,我只在示例中使用它,因为它\accent
即使在 T1 编码中也总是使用)。
问题的第二个根源是 hyperref 加载于 \AtBeginDocument 中,位于 microtype 代码之后。稍后加载 microtype(或更早加载 hyperref),可避免错误。
但是我想知道是否有比微调加载顺序(这对于 hyperref 来说很痛苦)更好的解决方案来保护 pdfauthor 的参数。
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{microtype}
\AtBeginDocument{%
\RequirePackage[%
pdfauthor={Max \"Labc}
]{hyperref}
}
\begin{document}
ablub
\end{document}
答案1
使用\hypersetup
设置作者而不是在加载时直接提供作者似乎可以正常工作,这是建议做法无论如何,当使用特殊字符时:
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{microtype}
\AtBeginDocument{%
\usepackage{hyperref}
\hypersetup{pdfauthor={Max \"Labc}}
}
\begin{document}
ablub
\end{document}