为什么我的超级引用是粉红色的?

为什么我的超级引用是粉红色的?

我的文档标题中有此内容:

  \usepackage[unicode=true,
              colorlinks=true,
              linkcolor=blue]{hyperref}

但链接看起来像这样:

在此处输入图片描述

为什么序言中写着蓝色,却用的是粉色?

完整的 .tex 中还有许多其他内容文档;我使用 Pandoc 从原始版本创建了此版本.Rmd 文件,所以也许这有助于解释这一点。无论如何,我想要一个更传统的蓝色链接颜色!

答案1

如果你通过检查 pandoc 的 LaTeX 模板pandoc -D latex,你会看到

\hypersetup{breaklinks=true,
            bookmarks=true,
            pdfauthor={$author-meta$},
            pdftitle={$title-meta$},
            colorlinks=true,
            citecolor=$if(citecolor)$$citecolor$$else$blue$endif$,
            urlcolor=$if(urlcolor)$$urlcolor$$else$blue$endif$,
            linkcolor=$if(linkcolor)$$linkcolor$$else$magenta$endif$,
            pdfborder={0 0 0}
            $if(hidelinks)$,hidelinks,$endif$}

$if(toc)$
{
\hypersetup{linkcolor=$if(toccolor)$$toccolor$$else$black$endif$}
\setcounter{tocdepth}{$toc-depth$}
\tableofcontents
}
$endif$

到 之间的所有内容$都由 pandoc 预处理,大部分都扩展为相应的变量(除了 s$if...$等),这意味着变量citecolorurlcolorlinkcolortoccolor仅限目录中的 linkcolor)被使用。因此,在您的例子中,您必须输入

linkcolor: blue

到你的文档中YAML 标头-M|V linkcolor=blue或提供或之一--metadata|variable=linkcolor:blue。是否使用M/metadataV/variable取决于您是否只想影响模板(通过V)或真正设置/替换元数据(通过M),这也可能影响所使用的任何过滤器或(尽管在本例中不是)在结果文档中输出。

关于unicode=true,该模板有

\ifxetex
  \usepackage[setpagesize=false, % page size defined by xetex
              unicode=false, % unicode breaks when used with xetex
              xetex]{hyperref}
\else
  \usepackage[unicode=true]{hyperref}
\fi

在其中,即 unicode 设置为 true,除非您使用 XeLaTeX 进行编译。如果您不想要这样,您必须修改模板本身或生成的 TeX 文件。

相关内容