有没有一种简单的方法可以用 if 语句“隐藏”环境?

有没有一种简单的方法可以用 if 语句“隐藏”环境?

我想要的是这样的:

\hidemyenvironment
\begin{myenvironment}
     This text is not displayed, it is "hidden".
\end{myenvironment}
\showmyenvironment
\begin{myenvironment}
     This text is visible!
\end{myenvironment}

我想要命令\hidemyenvironment来实现它不是出现在 PDF 上,而命令\showmyenvironment会使其再次出现。我考虑使用 if 语句,这样我就可以在文档中打开和关闭它,并显示一些环境并隐藏其他环境。

以下是 MWE:

\documentclass{article}
\usepackage[utf8]{inputenc}
\makeatletter
\newif\if@hidemyenvironment
\newcommand{\hidemyenvironment}{\@hidemyenvironmenttrue}
\newcommand{\showmyenvironment}{\@hidemyenvironmentfalse}

\newenvironment{myenvironment}{
     \if@hidemyenvironment
      % some code to ignore the environment?
     \else
     % just show whatever is in the environment/ do nothing
     \fi
}{}
\makeatother

\begin{document}
Hello!\par

\hidemyenvironment
\begin{myenvironment}
     Hidden text!
\end{myenvironment}
\par

\showmyenvironment
\begin{myenvironment}
     \begin{equation}
           x+y=z
     \end{equation}
\end{myenvironment}

\end{document}

是否有一个命令可以注释环境内的所有内容,或者其他解决方案?我希望您可以在环境中编写方程式、表格和其他内容,并且它仅用于隐藏/显示输出 PDF 的部分内容。

MWE 的输出应该是:

在此处输入图片描述

答案1

您可以使用评论包裹。

\documentclass{article}
\usepackage{comment}

\begin{document}

Hello!

\excludecomment{myenvironment}
\begin{myenvironment}
     Hidden text!
\end{myenvironment}

\includecomment{myenvironment}
\begin{myenvironment}
     \begin{equation}
           x+y=z
     \end{equation}
\end{myenvironment}

\end{document}

请随意添加

\newcommand{\hidemyenvironment}{\excludecomment{myenvironment}}
\newcommand{\showmyenvironment}{\includecomment{myenvironment}}

\par此外,您也没有必要使用。

相关内容