Setzen der Symbole

Setzen der Symbole

Ich schreibe ein Dokument, in dem ich das Verhalten eines bestimmten Systems beschreiben muss, wenn ein Parameter in einem bestimmten Bereich liegt (z. B. 1 <= x < 100). Das Dokument enthält ansonsten keine Gleichungen oder mathematischen Dinge. Ich verwende die Schriftart Source Sans Pro von Adobe und habe Probleme mit den Symbolen <= und <.

  • Wenn ich $\leq$für das Symbol <= verwende, sieht es anders aus als der Rest des Textes, genauer gesagt, ganz anders als das Symbol <
  • Wenn ich $\leq$und verwende $<$, sehen sie „ähnlich“ aus, aber die Grundlinien scheinen nicht ausgerichtet zu sein (und sie sehen sowieso anders aus als der Rest des Textes).

Hier ist ein Bild, das beide Optionen zeigt:

Bildbeschreibung hier eingeben

Gibt es eine Möglichkeit, das Symbol <= in derselben Schriftart wie den Rest des Dokuments zu setzen? Gibt es andernfalls eine Möglichkeit, die Grundlinien der Symbole <= und < auszurichten?

Update: Ich verwende pdflatex. Hier ist ein MWE:

\documentclass{book}

\usepackage[default]{sourcesanspro}

\begin{document}

1 $\leq$ abs(x) < 100

1 $\leq$ abs(x) $<$ 100

\end{document}

Antwort1

Mit lualatex/xelatex ist die Verwendung des Glyphs aus SourceSansPro einfach:

\documentclass{article}
\usepackage{fontspec}
\setmainfont{SourceSansPro}
\DeclareTextSymbol{\textlessthanequal}       \UnicodeEncodingName{"2264}
\begin{document}
1 ^^^^2264 x < 2

1 ≤  x < 2 

1 \textlessthanequal{} x < 2
\end{document}

Bildbeschreibung hier eingeben

Mit pdflatex ist es schwieriger. Das hier ist einhackenum zu vermeiden, dass viel Arbeit geleistet werden muss. Es wird angenommen, dass kleiner gleich der gleichen Breite wie kleiner ist.

  1. Suchen SourceSansPro-Regular-lf-t1--base.tfm(in fonts/tfm)
  2. Kopieren Sie es zB in Ihren aktuellen Ordner.
  3. Benennen Sie die Kopie um inXSourceSansPro-Regular-lf-t1--base.tfm
  4. Suchen a_ggs4wk.enc(in fonts/enc)
  5. Kopiere es.
  6. Benennen Sie die Kopie um inXa_ggs4wk.enc
  7. OffenXa_ggs4wk.enc
  8. Ändern Sie die Zeile /AutoEnc_ggs4wkuzes44fkerkgtyzffacb [in/XAutoEnc_ggs4wkuzes44fkerkgtyzffacb [
  9. Suchen Sie in der Datei /lessund ändern Sie sie in/lessequal
  10. Speicher die Datei.
  11. Testen Sie, ob es mit diesem Dokument funktioniert:

     \documentclass{book}
    
    \usepackage[default]{sourcesanspro}
    
    \pdfmapline{=XSourceSansPro-Regular-lf-t1--base XSourceSansPro-Regular "XAutoEnc_ggs4wkuzes44fkerkgtyzffacb ReEncodeFont" <[Xa_ggs4wk.enc <SourceSansPro-Regular.pfb}
    
    \makeatletter
    \DeclareFontEncoding{U}{}{}
    \DeclareFontFamily{U}{xsourcesans}{}
    \DeclareFontShape{U}{xsourcesans}{m}{n}
     { <->  XSourceSansPro-Regular-lf-t1--base
      }{}
    \newcommand\textlessequal{{\fontencoding{U}\fontfamily{xsourcesans}\selectfont <}}
    \begin{document}
    
    1 \textlessequal{} abs(x) < 100
    
    \end{document}
    

Bildbeschreibung hier eingeben

In beiden Fällen ist das Kleiner-Zeichen nicht an der Grundlinie des Kleiner-Gleich-Zeichens ausgerichtet. Sie können dies mit Ihrem Raisebox-Befehl tun, aber meiner Meinung nach wird es seltsam aussehen.

Antwort2

Oder Sie können MnSymboldie Option mit laden mathspec. Dadurch erhalten Sie zwar nicht dasselbe Symbol, es sieht aber besser aus.

Ergebnis

Ergebnis

MWE

% !TeX program = xelatex

\documentclass{article}
\usepackage[MnSymbol]{mathspec}
\usepackage[default]{sourcesanspro}
\defaultfontfeatures
{ Ligatures      = TeX ,
    Numbers        = Proportional ,
    Extension      = .otf ,
    UprightFont    = *-Regular ,
    ItalicFont     = *-RegularIt ,
    BoldFont       = *-Bold , 
    BoldItalicFont = *-BoldIt }
\setmathfont(Digits,Latin){SourceSansPro}

\begin{document}

    1 $\leq$ abs(x) < 100

    1 $\leq$ abs(x) $<$ 100

    $x=12$

\end{document}

Antwort3

Dies behebt die Grundlinie wie benötigt:

1 $\leq$ abs(x) \raisebox{1pt}{$<$} 100

Ergebnis:

Bildbeschreibung hier eingeben

verwandte Informationen