删除 \cref 生成的交叉引用

删除 \cref 生成的交叉引用

我想删除用 生成的交叉引用\cref。我认为像下面这样的基本示例可以起作用:

\documentclass{article}
\usepackage{cleveref}
\usepackage{soul}

\begin{document}

Consider
\begin{equation}\label{eq:int}
\int_a^bf(t)dt=0    
\end{equation}

Then \st{Ignore \cref{eq:int}.}

\end{document}

但是,我收到一条错误消息,提示符号太多}。为了澄清起见,我希望交叉引用仍然保留(并且是蓝色的,但我认为这对本示例来说并不重要),但在其上方有删除线。

任何帮助,将不胜感激。

答案1

这是 的绕过解决方案TikZ,通过用线套印删除文本,使用与基线对齐的节点并应用和west节点east锚点作为绘图的起点和终点。

使用TikZ样式和/或pgfkeys等,定制会更好。

\documentclass{article}
\usepackage{cleveref}

\usepackage{tikz}


\newcommand{\tikzst}[2][line width=1pt,blue,opacity=0.4]{%
  \tikz[baseline]{ \node[anchor=text,outer sep=0pt,inner sep=0pt] (A) {#2}; \draw[#1] ([xshift=-0.1ex]A.west) --  ([xshift=0.1ex]A.east);}%
}

\begin{document}

Consider
\begin{equation}\label{eq:int}
\int_a^bf(t)dt=0    
\end{equation}

\begin{equation}
  c^2 = a^{2} + b^{2} \label{eq:pythagoras}
\end{equation}

Then \tikzst{Ignore \cref{eq:int}}, but think of \tikzst[red]{\cref{eq:pythagoras}}!

\end{document}

在此处输入图片描述

相关内容