%20.png)
\section{Proof of Theorem~\ref{thm:main}}
erstellt nicht das richtige PDF-Lesezeichen (mithilfe des hyperref
Pakets).
\section{Proof of \texorpdfstring{Theorem~\ref{thm:main}}{Theorem 3.1.7}}
würde das gewünschte Ergebnis liefern (\texorpdfstring und Header-Einstellung), aber da " 3.1.7
" fest codiert ist, muss ich diese Codezeile jedes Mal ändern, wenn ich meinen Text neu anordne.
Ich verstehe, dass viele mathematische Formeln nicht als PDF-Strings (PDF-Lesezeichen) verwendet werden können, da sie keine Unicode-Darstellung haben (Automatisch \texorpdfstring für den Mathematikmodus in Abschnittstiteln hinzufügen).
Aber „Theorem 3.1.7“ enthält nur einfache ASCII-Symbole. Daher sollte es zumindest theoretisch möglich sein, dafür eine automatische Lösung zu implementieren.
Idealerweise hätte ich gerne Code, der es mir ermöglicht, einfach Folgendes zu schreiben:
\section{Proof of \Cref{thm:main}}
(durch Verwendung des cleveref
Pakets, aber eine Lösung für \ref
wäre auch schon sehr hilfreich)
Beispiel:
\documentclass{article}
\usepackage{hyperref}
\usepackage{cleveref}
\newtheorem{theorem}{Theorem}[section]
\begin{document}
\begin{theorem}\label{thm:main}
text
\end{theorem}
many pages
\section{Proof of \Cref{thm:main}}
\end{document}
(dieser Code liefert nicht die richtigen PDF-Lesezeichen)
(PS: Ich denke, es wäre wirklich toll, einen solchen Code in das hypperref
oder in das cleveref
Paket aufzunehmen)
Antwort1
Sie können die mit einem Sternchen versehene Version von \ref verwenden:
\documentclass{article}
\newtheorem{theorem}{theorem}
\usepackage{hyperref}
\begin{document}
\tableofcontents
\section{Proof of Theorem~\texorpdfstring{\ref{thm:main}}{\ref*{thm:main}}}
\begin{theorem}
\label{thm:main} some theorem
\end{theorem}
\end{document}
Antwort2
@Phelype Oleinik hat einen Link zu einer sehr guten Lösung veröffentlichthttps://tex.stackexchange.com/a/485979/128042
\documentclass{article}
\usepackage{hyperref}
\usepackage{cleveref}
\newtheorem{theorem}{Theorem}[section]
\usepackage{crossreftools}
\pdfstringdefDisableCommands{%
\let\Cref\crtCref
\let\cref\crtcref
}
\begin{document}
\begin{theorem}\label{thm:main}
text
\end{theorem}
many pages
\section{Proof of \Cref{thm:main}}
\end{document}
Diese Lösung für die andere FrageClevereEf-Links im Abschnittstitel verbergenbeantwortet diese Frage auch perfekt.
Ulrike Fischer Lösunghttps://tex.stackexchange.com/a/504969/128042ist eine tolle Alternative, wenn Sie das crossreftools
Paket nicht nutzen können.