Wie definieren Sie die Ausgabe in Abhängigkeit von einer variable mit einem status in LaTeX?

StackOverflow https://stackoverflow.com/questions/421989

  •  05-07-2019
  •  | 
  •  

Frage

Ich habe einige standard-Texte, aber ein Teil davon ist anders.Aber von diesen verschiedene Teile, die nur ein paar vorhanden ist.

Zum Beispiel möchte ich:

\mytext{...}{a}

\mytext{...}{b}

Produziert:

\section{Item: ...}\label{item...}
This is a standard item. Items of type a are very precious.

\section{Item: ...}\label{item...}
This is a standard item. Items of type b are cheap.

Eine einfache Lösung wäre, zu definieren, Befehle mytexta und mytextb, aber als ich mehr Möglichkeiten haben ich will mehr, so etwas wie eine if-oder switch-in der Programmierung Sprachen.Hat jemand eine Lösung für dieses problem?

War es hilfreich?

Lösung

Die ifthen Paket (enthalten in standard-LaTeX-installation) definiert einen Befehl \ifthenelse, die wie folgt verwendet:

\usepackage{ifthen}
\ifthenelse{test}{then-code}{else-code}

also, Sie könnten etwas tun wie:

\newcommand\mytext[1]{%
    \ifthenelse{\equal{#1}{a}}{very precious}{%
    \ifthenelse{\equal{#1}{b}}{cheap}{unknown}}}

Für die LaTeX-Programmierung, würde ich empfehlen, sich eine Kopie Der LaTeX-Begleiter.Es ist eine wirklich gute Referenz für dieses Zeug.

Andere Tipps

Sie können mit ewif\iffoo zu erklären, einen neuen Zustand.Dann \footrue oder \foofalse setzt es auf true oder false, und Sie können es verwenden, indem Sie \iffoo ...\else ...\fi.

Es gibt weitere Bedingungen finden Sie auf Seite 209ff in der TeXbook.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top