由于 \sout 在数学模式下不起作用,我可以用什么来代替?我不想像使用 cancelf 那样出现对角删除线
答案1
这个包裹cancel
正是为此目的而制作的。
这手动的说有四个不同的命令:
\cancel
\bcancel
\xcancel
\cancelto{<value>}{<expression>}
前三个在数学和文本模式下工作,但\cancelto
仅适用于数学模式。
这就是他们所做的
平均能量损失
\documentclass{article}
\usepackage{cancel}
\begin{document}
\(\cancel{f(x)} = \bcancel{4} + \xcancel{5} - \cancelto{45}{60}\)
\end{document}
答案2
这个答案很大程度上基于埃格尔的评论,他值得所有的赞誉。
\documentclass{article}
\makeatletter
\newcommand{\linethrough}{\mathpalette\@thickbar}
\newcommand{\@thickbar}[2]{{#1\mkern0mu\vbox{
\sbox\z@{$#1#2\mkern-1.5mu$}%
\dimen@=\dimexpr\ht\tw@-\ht\z@+2\p@\relax % The +2 represents the vertical shift of the line.
\hrule\@height0.5\p@ % The 0.5 represent the thickness on the line.
\vskip\dimen@
\box\z@}}
}
\makeatother
\newcommand{\mathstrike}[1]{\ensuremath{\linethrough{#1}}}
\begin{document}
\mathstrike{f(x) = x^2},\qquad \mathstrike{c_0}, \qquad \mathstrike{f(x) = x^2 + c_0}
\end{document}