隐藏新命令内容

隐藏新命令内容

我正在使用新定义的命令向我的乳胶添加注释,如下所示:

\newcommand{\mycomment}[3]{\textcolor{#1}{\small [#2: #3]}}
\newcommand{\reviewerA}[1]{\mycomment{blue}{Reviewer 1:}{#1}}
%...
\reviewerA{bla bla}

是否有一个命令可以用来隐藏评论中的所有内容?

答案1

如果您想在输出 PDF 中打开或关闭所有注释,您可以简单地将命令重新定义为空白

\newcommand{\mycomment}[3]{\textcolor{#1}{\small [#2: #3]}}
\newcommand{\reviewerA}[1]{\mycomment{blue}{Reviewer 1:}{#1}}
%...
\newcommand{\mycomment}[3]{}
\newcommand{\reviewerA}[1]{}
%...
\reviewerA{bla bla}

如果您想恢复命令,您需要删除或只注释那些空白变体。

答案2

我想这就是你想要的。

\documentclass{article}
\usepackage{xcolor}
\newif\ifprintcomments
\newcommand{\mycomment}[3]{%
  \ifprintcomments
    \hfill % I added this, you can skip it if you want.
    \textcolor{#1}{\small [#2: #3]}%
  \fi
}
\newcommand{\reviewerA}[1]{%
  \ifprintcomments
    \mycomment{blue}{Reviewer 1}{#1}%
  \fi
}

\begin{document}
\printcommentstrue

Hey I think $1+1=3$\reviewerA{This is bullshit!}

and $2+2=6$\reviewerA{Bruh! :/}

\printcommentsfalse

Hey I think $1+1=3$\reviewerA{This is bullshit!}

and $2+2=6$\reviewerA{Bruh! :/}
\end{document}

1


解释

我在这里所做的基本上是;我定义一个条件,\newif\ifprintcomments并仅当此条件为真时(即,当)添加您的定义\printcommentstrue。一旦您发出,\printcommentsfalse含义就消失了。因此您什么也没输出。干杯!


注意:我添加了一个\hfill。如果您不喜欢它,请将其删除。此外,我:从 的定义中删除了 ,因为它会打印两次。请注意,在 的定义中也\reviewerA有一个。:\mycomment

相关内容