使用 XeLaTeX 和 Hyperref 在编号部分标题中使用多种字体

使用 XeLaTeX 和 Hyperref 在编号部分标题中使用多种字体

我正在尝试使用XeLaTeX来构建我的文档。我在命令中定义了包含两种不同字体的部分section。我设法让它工作,但只有在使用*删除数字的版本时才有效。如果hyperref包含,则命令的常规版本会失败。

\documentclass{article}
\usepackage{fontspec}
\usepackage{titlesec}
\usepackage{hyperref}

\newfontfamily\fontTNR{Times New Roman}
\newfontfamily\fontAN{Arial}

\DeclareTextFontCommand{\fontA}{\fontTNR\fontsize{16}{19.2}\selectfont}
\DeclareTextFontCommand{\fontB}{\fontAN\fontsize{16}{19.2}\selectfont}

\begin{document}

\section*{\fontA{Text1} \fontB{Text2}}

\end{document}

这完全通过了。但是,删除了 的以下版本*由于与 冲突而失败hyperref

\documentclass{article}
\usepackage{fontspec}
\usepackage{titlesec}
\usepackage{hyperref}

\newfontfamily\fontTNR{Times New Roman}
\newfontfamily\fontAN{Arial}

\DeclareTextFontCommand{\fontA}{\fontTNR\fontsize{16}{19.2}\selectfont}
\DeclareTextFontCommand{\fontB}{\fontAN\fontsize{16}{19.2}\selectfont}

\begin{document}

\section{\fontA{Text1} \fontB{Text2}}

\end{document}

我尝试查看hyperref文件来追踪错误,但老实说,这远远超出了我的理解范围。这是我从日志中得到的错误。

从 TeXStudio 捕获的错误列表示例。

hyperref我猜想这与管理索引的方式有关。也许当section*使用该索引时,当从目录中删除该部分时,此冲突就会被消除?

我确实研究过使用titlesec它来完成这项任务,但没有看到如何仅使用格式规范就将多种字体应用于内容。

相关内容