扩展以创建链接在特定页面中打开附加的 PDF

扩展以创建链接在特定页面中打开附加的 PDF

这是对链接中问题的后续回答参考部分,不同之处在于页面信息来自宏。也就是说,

\href[page=2]{foo.pdf}{page 2}

我想使用

\def\PageNum{2}%
\def\HrefPageOption{page=\PageNum}%
\href[\HrefPageOption]{foo.pdf}{page \PageNum}

但这导致

包 keyval 错误:page=2 未定义。

我尝试了常用的扩展技巧,但无法让它工作。预期输出应该有完整的最后一行:

在此处输入图片描述

笔记:

  • 平均能量损失 下面按原样运行。要获取错误情况,需要取消注释最后一行。
  • 由于 TeXShop 使用 MacOS pdfkit,因此创建的链接似乎不起作用(与 MacOS Preview 的行为一致)。但是使用 Skim 或 Acrobat 时,链接可以正常工作。

参考:

代码:

\documentclass{article}
\usepackage{mathtools}
\usepackage{hyperref}
\usepackage{lipsum}

\begin{filecontents}{foo.tex}
    \documentclass{article}
    \usepackage{mathtools}
    \usepackage{hyperref}
    \usepackage{lipsum}
    
    \begin{document}
    \lipsum[1-5]
    \hypertarget{eq1}{\begin{equation}
    x=a
    \end{equation}}
    \lipsum[6-10]
    \end{document}
\end{filecontents}


\begin{document}
%% https://tex.stackexchange.com/a/320594/4301
As shown in \href[pdfnewwindow]{foo.pdf\#eq1}{(1)} we know that $x=a$.

You can find this equation on \href[pdfnewwindow]{foo.pdf\#page.2}{page 2}.

%% Ulrike Fischer's comment at https://tex.stackexchange.com/a/320594/4301
You can also find this equation on \href[page=2]{foo.pdf}{page 2}.
\medskip\par

%% How do I get this to work?
\def\PageNum{2}%
\def\HrefPageOption{page=\PageNum}%
Alternatively, you can also find this equation on 
%\href[\HrefPageOption]{foo.pdf}{page \PageNum}.
\end{document}

相关内容