Dies ist mein bester Versuch, das gewünschte Format in LaTeX zu erreichen:
\documentclass{article}
\usepackage[a4paper, total={160mm, 247mm}]{geometry}
\usepackage{color}
\definecolor{medred}{rgb}{0.75, 0, 0} % medium red
\usepackage{amsfonts, amsmath, amsthm}
\newtheoremstyle{definition}
{12pt} % Space above
{12pt} % Space below
{\sffamily} % Body font
{0pt} % Indent amount
{\sffamily\bfseries} % Theorem head font
{: } % Punctuation after theorem head
{0pt} % Space after theorem head
{} % Theorem head spec (can be left empty, meaning ‘normal’
\theoremstyle{definition}
\newtheorem{definition}{\textcolor{medred}{Definition}}
\begin{document}
\begin{definition}{$\mathbb{N}^+$}\\
$\mathbb{N}^+$ is the set of all positive natural numbers:
\begin{equation*}
\mathbb{N}^+:=\{1, 2, 3, \ldots\}
\end{equation*}
\end{definition}
\begin{definition}{$\mathbb{N}_0$}\\
$\mathbb{N}_0$ is the set of natural numbers including $0$:
\begin{equation*}
\mathbb{N}_0:=\{0, 1, 2, 3, \ldots\}
\end{equation*}
\end{definition}
\begin{definition}{Collatz sequence}\\
A \textit{Collatz sequence} is a mapping of all numbers from the set $\mathbb{N}_0$, called indices, to numbers from the set $\mathbb{N}^+$, called sequence members …
\end{definition}
\end{document}
Aber genau das ist es, was ich wirklich will. (Es wurde mit Microsoft Word erstellt. Das erfordert leider eine manuelle Nummerierung der Definitionen, ich brauche aber eine automatische Nummerierung, weshalb ich das Dokument lieber mit LaTeX schreibe.)
Soweit ich das beurteilen kann, besteht eine Definition aus fünf Teilen:
- Typ= Der String
Definition
. Er wird in Zeile 20 zusammen mit seiner roten Farbe als Argument des \newtheorem-Befehls definiert. (Das Leerzeichen am Ende des Strings darf nicht Teil dieses Arguments sein, da Latex es automatisch hinzufügt.) - Sequenznummer= Die Zahl, die unmittelbar nach dem Typ erscheint und bei jeder neuen Definition automatisch erhöht wird. Ich habe es geschafft, Zahlen fett zu machen (ich glaube, weil sie Teil des „Theoremkopfes“ sind), aber ich habe es nicht geschafft, sie rot zu machen, und ich habe keine Ahnung, wie das geht.
- Interpunktion= die Zeichenfolge
:
. Es ist das 7. Argument des Befehls \newtheoremstyle, der in Zeile 10 beginnt. Noch einmal: Ich kann diese Zeichenfolge fett machen, aber nicht rot. - Titel= die Zeichenfolge, die in meinen Beispielen in derselben Zeile steht wie die zuvor erwähnten Elemente. Es ist der Name des zu definierenden Elements. Aber offensichtlich sind dieser Titel und das nächste Element, das ich aufrufe,'Körper'gehören beide zu dem, was'Theoremhauptteil'in den Handbüchern. Ich kann entweder Titel und Text fett oder beide nicht fett machen, indem ich das vierte Argument des Befehls \newtheoremstyle ändere . Aber ich möchte diesen Teil fett und rot und das nächste Element schwarz und normal haben.
- Körper= Dies ist die Definition des im Titelelement genannten Elements. Ich möchte, dass es in einem anderen Format als der Titel angezeigt wird (schwarz und normal).
Wie kann ich diese Formate erreichen?
Ich habe noch zwei zusätzliche Wünsche, die beide weniger wichtig sind („nice to have“, aber kein „muss“):
Ich möchte eine bestimmte Schriftart angeben (wie Arial, Calibiri oder Libertine), nicht nur eine Schriftfamilie (wie \sffamily). Wo finde ich eine kurze, aber gute Dokumentation, die das beschreibt?
Ich möchte außerdem, dass $\mathbb{N}^+$ und andere mathematische Ausdrücke, die im Titel einer Definition erscheinen, ebenfalls fett gedruckt werden. Auch das konnte ich in MS-Word nicht tun (ich konnte es zwar in Word fett formatieren, aber dann wurde nur die tiefgestellte 0 in N₀ fett, aber weder das N noch das + änderten ihr Aussehen), daher denke ich, dass es ein Problem mit den Mathematik-Schriftarten ist, die keine Fettschriftsymbole bereitstellen. Gibt es eine Problemumgehung, um dieses Problem zu lösen?
Antwort1
Wie @John Kormylo sagte, gibt es für einige Schriftarten keine fette Version.
\documentclass{article}
\usepackage{fontspec}
\usepackage{xcolor}
\definecolor{medred}{rgb}{0.75,0,0}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{amsthm}
\usepackage[bb=boondox]{mathalpha}
\newtheoremstyle{definition}
{12pt}
{12pt}
{\fontspec{Arial}}
{0pt}
{\fontspec{Arial}\bfseries\boldmath\color{medred}}
{\newline}
{0pt}
{\thmname{#1}\space\thmnumber{#2}:\space\thmnote{#3}}
\theoremstyle{definition}
\newtheorem{definition}{Definition}
\begin{document}
\begin{definition}[$\mathbb{N}^+$]
$\mathbb{N}^+$ is the set of all positive natural numbers:
\begin{equation*}
\mathbb{N}^+:=\{1, 2, 3, \ldots\}
\end{equation*}
\end{definition}
\begin{definition}[$\mathbb{N}_0$]
$\mathbb{N}_0$ is the set of natural numbers including $0$:
\begin{equation*}
\mathbb{N}_0:=\{0, 1, 2, 3, \ldots\}
\end{equation*}
\end{definition}
\begin{definition}[Collatz sequence]
A \textit{Collatz sequence} is a mapping of all numbers from the set $\mathbb{N}_0$, called indices, to numbers from the set $\mathbb{N}^+$, called sequence members …
\end{definition}
\end{document}
Antwort2
Ich glaube nicht, dass Sie in den Definitionsaussagen irgendeine beliebige Schriftart verwenden möchten. Wenn Sie dafür eine serifenlose Schriftart verwenden möchten, ist das in Ordnung, aber in einem Dokument sollte nur eine einzige serifenlose Schriftart verwendet werden, sonst wirkt es wie ein Flickenteppich.
Hier definiere ich eine andere serifenlose Schriftart, nämlich Source Sans Pro. Verwenden Sie sie fontspec
mit XeLaTeX oder LuaLaTeX, wenn Sie bei dieser Auswahl mehr Freiheit haben möchten, mit \setsansfont
.
Ich habe Beispiele für nicht nummerierte Definitionen oder ohne Titel hinzugefügt, bei denen Sie den Doppelpunkt wahrscheinlich weglassen möchten.
\documentclass{article}
\usepackage[a4paper, total={160mm, 247mm}]{geometry}
\usepackage{xcolor}
\usepackage{amsfonts, amsmath, amsthm}
\usepackage[default]{sourcesanspro}
\definecolor{medred}{rgb}{0.75, 0, 0} % medium red
\newtheoremstyle{mydef}
{12pt} % Space above
{12pt} % Space below
{\sffamily} % Body font
{0pt} % Indent amount
{\color{medred}\sffamily\bfseries} % Theorem head font
{} % Punctuation after theorem head (the spec below take care)
{\newline} % Space after theorem head
{\thmname{#1}\thmnumber{ #2}\thmnote{: #3}}
\theoremstyle{mydef}
\newtheorem{definition}{Definition}
\newtheorem*{definition*}{Definition}% just to test
\begin{document}
\begin{definition}[$\mathbb{N}^+$]
$\mathbb{N}^+$ is the set of all positive natural numbers:
\begin{equation*}
\mathbb{N}^+:=\{1, 2, 3, \dotsc\}
\end{equation*}
\end{definition}
\begin{definition}[$\mathbb{N}_0$]
$\mathbb{N}_0$ is the set of natural numbers including $0$:
\begin{equation*}
\mathbb{N}_0:=\{0, 1, 2, 3, \dotsc\}
\end{equation*}
\end{definition}
\begin{definition*}[Collatz sequence]
A \textit{Collatz sequence} is a mapping of all numbers from
the set $\mathbb{N}_0$, called indices, to numbers from the set
$\mathbb{N}^+$, called sequence members …
\end{definition*}
\begin{definition}
This definition has no title
\end{definition}
\begin{definition*}
This definition has no title and no number
\end{definition*}
\end{document}