我有一種情況,文檔標題是稍後設定的,包含在另一個命令中(它與語言版本有關)。
Hypersetup載入順序
我想將新標題放入 hypersetuppdftitle
指令中。結果並不理想。該文件的元資料在 Adobe Reader 中顯示為 Baluga。我是否將其放在\hypersetup
我的下面似乎並不重要specialmacro
。
例子
\documentclass{article}
\usepackage{fontspec}
\usepackage{hyperref}
\newcommand\baluga{Baluga}
\newcommand\whale{}
\hypersetup{%
pdftitle={\baluga{} \whale{}},%
}%
\newcommand\specialmacro{
\renewcommand\whale{whale}
}
\begin{document}
\specialmacro{}
Test
\end{document}
更新:使用包裝器的解決方案\hypersetup
\documentclass{article}
\usepackage{fontspec}
\usepackage{hyperref}
\newcommand\baluga{Baluga}
\newcommand\whale{}
\newcommand\hyperset{
\hypersetup{%
pdftitle={\baluga{} \whale{}},%
}%
}
\newcommand\specialmacro{
\renewcommand\whale{whale}
\hyperset
}
\begin{document}
\specialmacro{}
Test
\end{document}
答案1
這是新編輯的版本:
\documentclass{article}
\usepackage{fontspec}
\usepackage{hyperref}
\newcommand\baluga{Baluga}
\newcommand\whale{}
\newcommand\hyperset{\hypersetup{pdftitle={\baluga{} \whale{}},}}
\begin{document}
Test
\renewcommand\whale{whale}
\hyperset
\end{document}