Latex mit Wort in der Überschrift verwechselt

Latex mit Wort in der Überschrift verwechselt

Ich habe ein Dokument so eingerichtet, dass ein Wort auf eine bestimmte Weise angezeigt wird. Außerdem habe ich das Times-Paket verwendet, um die Dokumentschriftart wie gezeigt einzustellen

\documentclass[a4paper,11pt,openany,oneside]{sphinxmanual}
\usepackage[T1}{fontenc}
\usepackage[english]{babel}
\usepackage{times}

\usepackage{color}
\definecolor{myred}{RGB}{165,0,33}
\DeclareRobustCommand\accuroam{%
    \usefont{OT1}{cmr}{m}{n}Accu%
    \usefont{OT1}{cmss}{m}{n}\textcolor{myred}{ROAM}
}%

\begin{document}
...
\end{document}

Das alles scheint zu funktionieren, bis der Befehl \accuroamauftritt. Dann ändert er den darauf folgenden Text in die normale CMS-Stärke (dasselbe wie ROAM in \accuroam).

Wie kann ich das beheben, sodass nur das Wort geändert wird und nicht der Rest des Textes?

Hinweis: Ich verwende derzeit pdflatex als Builder und kann xelatex noch nicht nutzen.

Jede Hilfe ist willkommen.

Antwort1

Ich bin nicht sicher, ob Sie zu Computer Modern wechseln möchten, insbesondere wenn die Hauptschriftart des Dokuments Times ist.

Das Problem besteht, wie bereits gesagt, darin, dass \usefont...TeX dadurch angewiesen wird, von diesem Punkt an die ausgewählte Schriftart zu verwenden (unter Beachtung der Gruppierung).

Mein Vorschlag ist

\DeclareRobustCommand\accuroam{%
  \textnormal{Accu\color{myred}\sffamily ROAM}%
}

Mit \textnormalwählen Sie die Hauptschriftart des Dokuments (in der aktuellen Größe). Darin können Sie Farbe und Schriftfamilie ändern. Mit der schließenden Klammer \sffamilywird der Bereich beendet.

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[english]{babel}
\usepackage{mathptmx}

\usepackage{color}
\definecolor{myred}{RGB}{165,0,33}
\DeclareRobustCommand\accuroam{%
  \textnormal{Accu\color{myred}\sffamily ROAM}%
}

\begin{document}
We describe \accuroam{} which is a very bright idea.
\end{document}

Bildbeschreibung hier eingeben

Antwort2

Die Befehle zum Ändern der Schriftart sindschaltenBefehle. Das heißt, sie gelten für alle folgenden Inhalte, bis ein weiterer Schalter angetroffen wird oder die Gruppe endet.

Beheben Sie das Problem, indem Sie jede Sonderschriftart in eine Gruppe mit dem Text setzen, den sie formatieren soll. Ich habe außerdem der %Zeile mit dem roten Text ein Ende hinzugefügt, um unpassende Leerzeichen in der Ausgabe zu vermeiden:

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[english]{babel}
\usepackage{mathptmx} % `times' is obsolete

\usepackage{color}
\definecolor{myred}{RGB}{165,0,33}
\DeclareRobustCommand\accuroam{%
    {\usefont{OT1}{cmr}{m}{n}Accu}%
    {\usefont{OT1}{cmss}{m}{n}\textcolor{myred}{ROAM}}%
}%

\begin{document}
Test\dots \accuroam{}\dots Test.
\end{document}

Bildbeschreibung hier eingeben

Beachten Sie auch, dass dietimesPaket ist veraltet. Neuere Alternativen sind entweder dasmathptmxPaket oder newtxtext/ newtxmath.

Antwort3

Ich sehe keinen Grund, zur OT1-Kodierung zurückzukehren, da Sie ohnehin T1 verwenden:

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{mathptmx}% `times' is obsolete
\usepackage[scaled=.90]{helvet}
\usepackage{courier}

\usepackage{color}
\definecolor{myred}{RGB}{165,0,33}
\DeclareRobustCommand\accuroam{%
    {%
       \fontencoding{T1}%
       \fontfamily{cmr}%
       \fontseries{m}%
       \fontshape{n}%
       \selectfont Accu%
       \fontfamily{cmss}%
       \selectfont\textcolor{myred}{ROAM}%
    }%
}%

\begin{document}
Test\dots \accuroam{}\dots Test.
\end{document}

Ich habe die längeren Befehle zur Schriftartenspezifikation (anstelle von \usefont...) verwendet, um deutlich zu machen, was passiert. Beachten Sie, dass der zweite Schalter nur eine Familienspezifikation erfordert, da der erste Schalter bereits sicherstellt, dass die Kodierung, Form und Serie korrekt sind.

AccuROAM

verwandte Informationen