这些天我正在写我的学士论文,我遇到了一个新问题。我必须在第一次引用图表、表格和方程式时加下划线。通过互联网搜索,我已经找到了图表和表格的解决方案。但我没有成功编辑代码,所以它不能用于方程式。有人知道如何更改方程式的图表/表格解决方案吗?我正在使用方程式的对齐环境,用前缀eqn:
( \ref{eqn:abc}
)标记它
我的代码示例:
\documentclass[
pagesize,
DIV = calc,
liststotoc,
bibtotoc,
idxtotoc]{scrreprt}
\usepackage{amsmath}
\newif\ifMeinFormat
%\MeinFormattrue
\MeinFormatfalse
\makeatletter
\@ifdefinable\evtlfett{%
\ifMeinFormat
\let\evtlfett\@firstofone
\else
\let\evtlfett\underline
\fi
}%
\def\p@figure{\expandafter\p@@figure}%
\def\p@@figure#1{\@figmkdef{#1}}%
\DeclareRobustCommand\@figmkdef[1]{%
\@ifundefined{figmk#1}
{%
\global\@namedef{figmk#1}{}%
\evtlfett{Abbildung #1}%
}%
{Abbildung #1}%
}%
\def\p@table{\expandafter\p@@table}%
\def\p@@table#1{\@tablemkdef{#1}}%
\DeclareRobustCommand\@tablemkdef[1]{%
\@ifundefined{tblmk#1}
{%
\global\@namedef{tblmk#1}{}%
\evtlfett{Tabelle #1}%
}%
{Tabelle #1}%
}%
\makeatother
\begin{document}
\section{test}
{\begingroup erster Verweis auf die Figur: \ref{fig} \endgroup}\\
zweiter Verweis auf die Figur: \ref{fig}\\
erster Verweis auf die Table: \ref{tab}\\
zweiter Verweis auf die Table: \ref{tab}\\
erster Verweis auf die Gleichung: \ref{eqn:abc}\\
zweiter Verweis auf die Gleichung: \ref{eqn:abc}\\
\begin{figure}
Irgend ne Figur
\caption{\label{fig}Text}
\end{figure}
\begin{table}
Irgend ne Table
\caption{\label{tab}Text}
\end{table}
\begin{align}
a + b = c \label{eqn:abc}
\end{align}
\end{document}
答案1
经过进一步的改进,egreg
现在建议如下:
\documentclass[
pagesize,
DIV = calc,
liststotoc,
bibtotoc,
idxtotoc]{scrreprt}
\usepackage{amsmath}
\usepackage[colorlinks=true,linkcolor=blue]{hyperref}
\usepackage{letltxmacro}
\usepackage[ngerman]{cleveref}
\AtBeginDocument{%
\LetLtxMacro\oldcref\cref%
\renewcommand{\cref}[1]{%
\ifcsname[#1]\endcsname\relax%
{\oldcref{#1}}%
\else%
{\underline{\oldcref{#1}}%
}%
\expandafter\gdef\csname[#1]\endcsname{1}%
\fi%
}%
}
\begin{document}
\section{test}
erster Verweis auf die Figur: \cref{fig} \\
zweiter Verweis auf die Figur: \cref{fig}\\
erster Verweis auf die Table: \cref{tab}\\
zweiter Verweis auf die Table: \cref{tab}\\
erster Verweis auf die Gleichung: \cref{eqn:abc} \\
zweiter Verweis auf die Gleichung: \cref{eqn:abc}\\
dritte Verweis auf die Gleichung: \cref{eqn:abc}\\
\begin{figure}
Irgend ne Figur
\caption{\label{fig}Text}
\end{figure}
\begin{table}
Irgend ne Table
\caption{\label{tab}Text}
\end{table}
\begin{align}
a + b = c \label{eqn:abc}
\end{align}
\end{document}