如何在 LaTeX 中使用 if 条件?如果条件为真,我想执行代码,如果条件为假,则继续。抱歉,我的示例代码和英语不好。我不知道该怎么做。
\documentclass[11pt,a4paper,titlepage,bibliography=totoc,numbers=noenddot,abstract=on,multi,dvipsnames,svgnames,x11names]{scrreprt}
\usepackage{ifthen} %Paket einbinden
\newboolean{persoenlich} %Deklaration einer boolschen Variable
\setboolean{persoenlich}{false} %Zuweisung eines Wertes.
供您参考 -> 交叉发布https://texwelt.de/wissen/fragen/23136/wie-funktioniert-eine-if-abfrage-in-latex
答案1
存在多种不同的可能性。
朴素风格如下:
\newif\ifMyIfThingy
这定义了三个宏,\MyIfThingytrue
将其设置为 true、\MyIfThingyfalse
将其设置为 false 和\ifMyIfThingy
。您可以按以下方式使用它:
\ifMyIfThingy
True
\else
False
\fi
LaTeX 中有以下高级实现etoolbox
:
\usepackage{etoolbox}
\newbool{MyIfThingy}
\booltrue{MyIfThingy}
\boolfalse{MyIfThingy}
\ifbool{MyIfThingy}{True}{False}
\newtoggle{MyToggleThingy}
\toggletrue{MyToggleThingy}
\togglefalse{MyToggleThingy}
\iftoggle{MyToggleThingy}{True}{False}
切换和布尔值之间的区别在于,etoolbox
布尔值是在内部构建的,\newif
而切换的实现方式不同,并且每个切换只使用一个宏。
然后有 LaTeX3 布尔值,例如:
\usepackage{expl3}
\ExplSyntaxOn
\bool_new:N \l_my_bool_thingy_bool
\bool_set_true:N \l_my_bool_thingy_bool
\bool_set_false:N \l_my_bool_thingy_bool
\bool_if:NTF \l_my_bool_thingy_bool
{ True }
{ False }
\ExplSyntaxOff
expl3
但是,如果您使用...进行编码,则应仅使用 LaTeX3 布尔值。
答案2
有了ifthen
,你就可以
\ifthenelse{\boolean{persoenlich}}{True}{False}
如果布尔值返回 true 则将其替换True
为要执行的代码,对于 也类似False
。