Umgebungen mit Standardschriftart, andere Texte als \textsf

Umgebungen mit Standardschriftart, andere Texte als \textsf

Ich möchte die Schriftart eines Dokuments auf die von festgelegte Schriftart setzen \textsf{}, aber in Umgebungen wie Definitionen und Theoremen die Standardschriftart beibehalten. Mein Versuch,

\documentclass[a4paper,12pt]{book} 
\usepackage{amsthm}
\renewcommand{\familydefault}{\sfdefault}
\newtheorem{defi}{Definition}[chapter]
\newtheoremstyle{defi}% name
{3pt}% Space above
{3pt}% Space below
{crm}% Body font
{}% Indent amount
{\itshape}% Theorem head font
{:}% Punctuation after theorem head
{.5em}% Space after theorem head
{}% Theorem head spec (can be left empty, meaning ‘normal’)

\begin{document}

\begin{defi} Text with default font. \end{defi}

Text in sans-serif font.

\end{document}

Aber es funktioniert nicht, da die Schriftart im gesamten Text als serifenlos definiert ist. Ich frage mich, ob die Schriftart, die ich oben angegeben habe, richtig ist. Wenn mir jemand einen Hinweis geben könnte, wäre ich dankbar. Mir wurde geraten, diese serifenlose Schriftart nicht für den Satz meines Dokuments zu verwenden. Daher hätte ich gerne einige Vorschläge. Vielen Dank im Voraus!

Antwort1

Es gibt mindestens ein paar Probleme:

  • die Schriftart sollte als angegeben werden \rmfamily, nicht als cmr;

  • Sie müssen Ihren neuen Stil vor der \newtheoremAnweisung aufrufen.

Versuche dies:

% My standard header for TeX.SX answers:
\documentclass[a4paper]{article} % To avoid confusion, let us explicitly 
                                 % declare the paper format.

\usepackage[T1]{fontenc}         % Not always necessary, but recommended.
% End of standard header.  What follows pertains to the problem at hand.

\usepackage{amsmath,amsthm}

\renewcommand{\familydefault}{\sfdefault}

\newtheoremstyle{defi}% name
    {3pt}% Space above
    {3pt}% Space below
    {\rmfamily}% Body font
    {}% Indent amount
    {\rmfamily\itshape}% Theorem head font
    {:}% Punctuation after theorem head
    {.5em}% Space after theorem head
    {}% Theorem head spec (can be left empty, meaning "normal")

\theoremstyle{defi}
\newtheorem{defi}{Definition}[section] % not "chapter" because I'm using the 
                                       % "article" document class



\begin{document}

\section{A title}

Some text before the first definition: this text should be in ``sans-serif''.

\begin{defi}
    This is a definition, and it should be in \verb|\rmfamily| (that is, 
    \emph{with} serifs).
\end{defi}

Some text after the definition, again in \verb|\sffamily|.

\end{document}

Sie können selbst überprüfen, ob das Ergebnis einfach nur schlechte Typografie ist:

Ausgabe des Codes

Tatsächlich ist es schon fragwürdig, einen Artikel (oder, schlimmer noch, einen Bericht: Sie haben Kapitel verwendet, nicht wahr?) in einer serifenlosen Schriftart zu setzen; aberinnerhalbso ein Dokument, die Definitionen mit Serifen…

verwandte Informationen