如何定义数学表达式以便在书签中重复使用

如何定义数学表达式以便在书签中重复使用
\documentclass[12pt,a4paper]{article}
\usepackage{amsmath}

\usepackage[bookmarksnumbered=true]{hyperref}
\hypersetup{
%   bookmarks=true,           % show bookmarks bar?
    bookmarksopen=true,
    unicode=true             % non--Latin characters in Acrobat’s bookmarks
}


\begin{document}
\listoffigures

\section{
    \texorpdfstring{Math symbols $\sum, \int$}%
    {Math symbols sum, integral}
}
\section{Example: %
\texorpdfstring{$\{[\phi(t),p(\cdot)]\}$}
    {$\{[\textphi(t),p(\textcdot)]\}$}
}

\section{Example: %
\texorpdfstring{$[\phi(t),p(\cdot)]$}
    {$\{[\textphi(t),p(\textcdot)]\}$}
}


\end{document}

我有几个章节/小节标题带有类似上述的数学表达式。有没有办法对\phi(或lambda或任何其他数学符号)进行一般定义,以便将其作为\phi文章中的数学符号和书签中的文本phi

如果我每次都必须这样做,那就意味着我必须写下所有的部分名称两次,这有点不愉快。

答案1

除下标 C 外,大多数符号均可以在 Unicode 中使用:

\documentclass[12pt,a4paper]{article}
\usepackage{amsmath}

\usepackage[
  bookmarksnumbered=true,
  psdextra,
]{hyperref}
\usepackage{bookmark}
\hypersetup{
  bookmarksopen=true,
  unicode=true             % non--Latin characters in Acrobat’s bookmarks
}

\begin{document}
\listoffigures  

\section{Math symbols $\sum, \int$}
\section{$\{\phi(t), p(\cdot)\}$}  
\section{$\{\phi(t), p(t)\}$}
\section{$\{[\phi(t + h), \lambda(t + h)]\texorpdfstring_{\_}C\}$}

\end{document}

结果

然后是警告

Package hyperref Warning: Token not allowed in a PDF string (Unicode):
(hyperref)                removing `math shift' on input line 17.

\ensuremath{...}可以忽略。可以使用而不是 来删除它们$...$

选项psdextra增加了对许多数学符号的支持。软件包bookmark改进了更新行为(并提供了更多功能)。

书签中的字符形状

书签以 PDF 查看器选择的字体显示,PDF 文件仅包含一个简单的字符串(使用 PDFDocEncoding 或 Unicode 编码)。 的情况\phi不明确,因为它可能代表多个 Unicode 代码点:

  • φ U+03C6 希腊小写字母 PHI
  • ϕ U+03D5 希腊文 PHI 符号
  • ɸ U+0278 拉丁小写字母 PHI

hyperref映射\phi\textphi,它使用文本变体 U+03C6。它可以重新定义为返回数学符号 U+03D5:

\documentclass[12pt,a4paper]{article}
\usepackage{amsmath}

\usepackage[
  bookmarksnumbered=true,
  psdextra,
]{hyperref}
\usepackage{bookmark}
\hypersetup{
  bookmarksopen=true,
  unicode=true             % non--Latin characters in Acrobat’s bookmarks
}
\pdfstringdefDisableCommands{%
  \def\phi{\unichar{"03D5}}%
}

\begin{document}
\listoffigures

\section{Math symbols $\sum, \int$}
\section{$\{\phi(t), p(\cdot)\}$}
\section{$\{\phi(t), p(t)\}$}
\section{$\{[\phi(t + h), \lambda(t + h)]\texorpdfstring_{\_}C\}$}

\end{document}

结果

相关内容