我正试图删除整个flalign
区块。 这个帖子演示了如何使用cancel
包删除对齐的块,但我无法让它在 flalign 环境中工作。有什么想法可以在不使用的情况下让它工作tikz
吗?
\documentclass{article}
\usepackage{amsmath}
\usepackage[makeroom]{cancel}
\begin{document}
\begin{equation*}
\cancel{
\begin{aligned}
f(x) &= \sin(x) \\
g(x) &= \cos(x)
\end{aligned}
}
\end{equation*}
I want to strikeout this:
\begin{flalign*}
f(x) &= \sin(x) && \\
g(x) &= \cos(x) &&
\end{flalign*}
\end{document}
答案1
您可以轻松定义左对齐equation
环境,然后使用嵌套的方法aligned
。
\documentclass{article}
\usepackage{amsmath}
\usepackage[makeroom]{cancel}
% https://tex.stackexchange.com/a/148854
\makeatletter
\newenvironment{flequation}
{\@fleqntrue\begin{equation}}
{\end{equation}\@fleqnfalse}
\newenvironment{flequation*}
{\@fleqntrue\begin{equation*}}
{\end{equation*}\@fleqnfalse}
\makeatother
\begin{document}
Some text
\begin{flequation*}
\cancel{
\begin{aligned}
f(x) &= \sin(x) \\
g(x) &= \cos(x)
\end{aligned}
}
\end{flequation*}
More text
\end{document}
答案2
一个选择是将其放入小页面中并将其删除。
\documentclass{article}
\usepackage{amsmath}
\usepackage[makeroom]{cancel}
\begin{document}
\begin{equation*}
\cancel{
\begin{aligned}
f(x) &= \sin(x) \\
g(x) &= \cos(x)
\end{aligned}
}
\end{equation*}
I want to strikeout this:\\
\xcancel{\begin{minipage}{2cm}~\\[-2\baselineskip]
\begin{flalign*}
f(x) &= \sin(x) && \\
g(x) &= \cos(x) &&
\end{flalign*}
\end{minipage}}
\end{document}
缺点是您必须对 minipage 的宽度进行硬编码。您可以使用 Ti 的更复杂的宏来解决这个问题钾Z。
\documentclass{article}
\usepackage{amsmath}
\usepackage{tikz}
\newcommand{\tikznode}[3][]{\tikz[remember
picture,baseline=(#2.base)]{\node(#2)[inner sep=0pt,#1]{#3};}}
\begin{document}
\begin{flalign*}
\tikznode{lt}{\strut}f(x) &= \sin(x) && \\
g(x) &= \cos(x)\tikznode{br}{\strut} &&
\end{flalign*}
\tikz[overlay,remember picture]{\draw (lt.north) -- (br.south);}
\end{document}
但这可能有点小题大做。