Wie kann ich eine Liste aller \fontfamily{...}\fontseries{...}-Kombinationen erhalten?

Wie kann ich eine Liste aller \fontfamily{...}\fontseries{...}-Kombinationen erhalten?

Jemand hat mir gerade im Zusammenhang miteine andere Frageein oder zwei zu berücksichtigen\fontfamily{...}\fontseries{...} Kombinationen in Betracht zu ziehen; aber ich bin nicht so begeistert von diesen Optionen. Wie kann ich überprüfenallesolche Kombinationen auf meinem System installiert/verfügbar?

Notiz:Ich wäre damit einverstanden, dies außerhalb von LaTeX zu tun, z. B. von der Shell aus oder sogar mithilfe eines TeX-distributionsspezifischen Mechanismus (ich verwende TeXLive) – wenn es keine bessere Option gibt.

Antwort1

Dies sind nicht alle möglichen Werte, aber Sie können sich einen Überblick über die gebräuchlichsten Optionen verschaffen, wenn Sie mit der Maus über den betreffenden Befehl fahren texstudio:

(es wird nicht geprüft, ob alle Schriftarten auf Ihrem System installiert sind und welche Schriftstärken diese tatsächlich haben)

Bildbeschreibung hier eingeben Bildbeschreibung hier eingeben

Antwort2

Schriftartbeschreibungen werden normalerweise in .fdDateien gespeichert (das ist jedoch nicht zwingend, einige Pakete definieren die Schriftarten möglicherweise direkt in der .styDatei).

Der Shell-Befehl

fd '^[tT]1.*\.fd$' /usr/local/texlive/2017/texmf-dist/tex/latex | wc -l

(fdist ein Skript, das eine einfachere Schnittstelle bietet als find) gibt 555 zurück.

Es gibt also 555 Schriftfamilien, die die T1-Kodierung unterstützen (und 502 für die OT1-Kodierung, mit einer ähnlichen Befehlszeile).

Jetzt besteht Ihre Aufgabe darin, in jeder .fdDatei, die Sie interessiert, nach Informationen zu Form und Serie zu suchen, die in der Schriftfamilie enthalten sind. Nur als Beispiel T1Roboto-LF.fdenthält

%% Generated by autoinst on 2015/09/15
%%
\ProvidesFile{T1Roboto-LF.fd}
    [2015/09/15 (autoinst)  Font definitions for T1/Roboto-LF.]

\expandafter\ifx\csname Roboto@scale\endcsname\relax
    \let\Roboto@@scale\@empty
\else
    \edef\Roboto@@scale{s*[\csname Roboto@scale\endcsname]}%
\fi

\DeclareFontFamily{T1}{Roboto-LF}{}

\DeclareFontShape{T1}{Roboto-LF}{l}{sc}{
      <-> \Roboto@@scale Roboto-Light-lf-sc-t1
}{}

\DeclareFontShape{T1}{Roboto-LF}{l}{n}{
      <-> \Roboto@@scale Roboto-Light-lf-t1
}{}

\DeclareFontShape{T1}{Roboto-LF}{l}{it}{
      <-> \Roboto@@scale Roboto-LightItalic-lf-t1
}{}

\DeclareFontShape{T1}{Roboto-LF}{l}{scit}{
      <-> \Roboto@@scale Roboto-LightItalic-lf-sc-t1
}{}

\DeclareFontShape{T1}{Roboto-LF}{l}{scsl}{
      <-> ssub * Roboto-LF/l/scit
}{}

\DeclareFontShape{T1}{Roboto-LF}{l}{sl}{
      <-> ssub * Roboto-LF/l/it
}{}

\DeclareFontShape{T1}{Roboto-LF}{k}{sc}{
      <-> \Roboto@@scale Roboto-Black-lf-sc-t1
}{}

\DeclareFontShape{T1}{Roboto-LF}{k}{n}{
      <-> \Roboto@@scale Roboto-Black-lf-t1
}{}

\DeclareFontShape{T1}{Roboto-LF}{k}{it}{
      <-> \Roboto@@scale Roboto-BlackItalic-lf-t1
}{}

\DeclareFontShape{T1}{Roboto-LF}{k}{scit}{
      <-> \Roboto@@scale Roboto-BlackItalic-lf-sc-t1
}{}

\DeclareFontShape{T1}{Roboto-LF}{k}{scsl}{
      <-> ssub * Roboto-LF/k/scit
}{}

\DeclareFontShape{T1}{Roboto-LF}{k}{sl}{
      <-> ssub * Roboto-LF/k/it
}{}

\DeclareFontShape{T1}{Roboto-LF}{b}{sc}{
      <-> \Roboto@@scale Roboto-Bold-lf-sc-t1
}{}

\DeclareFontShape{T1}{Roboto-LF}{b}{n}{
      <-> \Roboto@@scale Roboto-Bold-lf-t1
}{}

\DeclareFontShape{T1}{Roboto-LF}{b}{it}{
      <-> \Roboto@@scale Roboto-BoldItalic-lf-t1
}{}

\DeclareFontShape{T1}{Roboto-LF}{b}{scit}{
      <-> \Roboto@@scale Roboto-BoldItalic-lf-sc-t1
}{}

\DeclareFontShape{T1}{Roboto-LF}{b}{scsl}{
      <-> ssub * Roboto-LF/b/scit
}{}

\DeclareFontShape{T1}{Roboto-LF}{b}{sl}{
      <-> ssub * Roboto-LF/b/it
}{}

\DeclareFontShape{T1}{Roboto-LF}{mb}{sc}{
      <-> \Roboto@@scale Roboto-Medium-lf-sc-t1
}{}

\DeclareFontShape{T1}{Roboto-LF}{mb}{n}{
      <-> \Roboto@@scale Roboto-Medium-lf-t1
}{}

\DeclareFontShape{T1}{Roboto-LF}{mb}{it}{
      <-> \Roboto@@scale Roboto-MediumItalic-lf-t1
}{}

\DeclareFontShape{T1}{Roboto-LF}{mb}{scit}{
      <-> \Roboto@@scale Roboto-MediumItalic-lf-sc-t1
}{}

\DeclareFontShape{T1}{Roboto-LF}{mb}{scsl}{
      <-> ssub * Roboto-LF/mb/scit
}{}

\DeclareFontShape{T1}{Roboto-LF}{mb}{sl}{
      <-> ssub * Roboto-LF/mb/it
}{}

\DeclareFontShape{T1}{Roboto-LF}{m}{sc}{
      <-> \Roboto@@scale Roboto-Regular-lf-sc-t1
}{}

\DeclareFontShape{T1}{Roboto-LF}{m}{n}{
      <-> \Roboto@@scale Roboto-Regular-lf-t1
}{}

\DeclareFontShape{T1}{Roboto-LF}{m}{it}{
      <-> \Roboto@@scale Roboto-Italic-lf-t1
}{}

\DeclareFontShape{T1}{Roboto-LF}{m}{scit}{
      <-> \Roboto@@scale Roboto-Italic-lf-sc-t1
}{}

\DeclareFontShape{T1}{Roboto-LF}{m}{scsl}{
      <-> ssub * Roboto-LF/m/scit
}{}

\DeclareFontShape{T1}{Roboto-LF}{m}{sl}{
      <-> ssub * Roboto-LF/m/it
}{}

\DeclareFontShape{T1}{Roboto-LF}{t}{sc}{
      <-> \Roboto@@scale Roboto-Thin-lf-sc-t1
}{}

\DeclareFontShape{T1}{Roboto-LF}{t}{n}{
      <-> \Roboto@@scale Roboto-Thin-lf-t1
}{}

\DeclareFontShape{T1}{Roboto-LF}{t}{it}{
      <-> \Roboto@@scale Roboto-ThinItalic-lf-t1
}{}

\DeclareFontShape{T1}{Roboto-LF}{t}{scit}{
      <-> \Roboto@@scale Roboto-ThinItalic-lf-sc-t1
}{}

\DeclareFontShape{T1}{Roboto-LF}{t}{scsl}{
      <-> ssub * Roboto-LF/t/scit
}{}

\DeclareFontShape{T1}{Roboto-LF}{t}{sl}{
      <-> ssub * Roboto-LF/t/it
}{}

\DeclareFontShape{T1}{Roboto-LF}{bx}{sl}{
      <-> ssub * Roboto-LF/b/sl
}{}

\DeclareFontShape{T1}{Roboto-LF}{bx}{scsl}{
      <-> ssub * Roboto-LF/b/scsl
}{}

\DeclareFontShape{T1}{Roboto-LF}{bx}{sc}{
      <-> ssub * Roboto-LF/b/sc
}{}

\DeclareFontShape{T1}{Roboto-LF}{bx}{n}{
      <-> ssub * Roboto-LF/b/n
}{}

\DeclareFontShape{T1}{Roboto-LF}{bx}{it}{
      <-> ssub * Roboto-LF/b/it
}{}

\DeclareFontShape{T1}{Roboto-LF}{bx}{scit}{
      <-> ssub * Roboto-LF/b/scit
}{}

\endinput

die besagt, dass die Schriftart die Serie bereitstellt

  • l(Licht)
  • k(Schwarz)
  • b(deutlich)
  • mb(mittelfett)
  • m(mittel oder normal)
  • t(dünn)

und definiert bxals Alias ​​für b.

Die Deskriptoren sind, abgesehen von mund, bim Wesentlichen beliebige Zeichenfolgen. Der LaTeX Font Guide ( texdoc fntguide) listet nur einige „gemeinsame“ Werte auf. Was ein Font-Paket aufruft, kkann sich stark von einem anderen unterscheiden.

Antwort3

Diese Website könnte hilfreich sein. Nützlich, um die verfügbaren Schriftarten zu prüfen.

https://tug.org/FontCatalogue/

Antwort4

Die Liste ist sogar noch länger. Sie ist offen. Die Antwort ist x.

Da xelatex und lualatex nun nicht nur auf Tex/Latex-Schriftarten, sondern auch auf Systemschriftarten zugreifen können, ist die Liste erheblich gewachsen.

Weiter,

Angenommen, ich verwende das fontspecPaket und definiere eine Schriftfamilie \setromanfont{Noto Serif}[, benenne dann eine ihrer Serien 仢ulund weise dieser Serie eine nicht verwandte Schriftart zu, FontFace={仢ul}{n}{Font=SimSun},und ich mache das mehrere Male,

und haben \DeclareRobustCommand{\仢ulseries}{\fontseries{仢ul}\selectfont}

Und

\DeclareTextFontCommand{\仢textul}{\仢ulseries}

und rufe dann die Serie mit

\仢textul{\sampletext} {\仢ulseries \sampletext}

wobei \sampletextdefiniert ist als

\newcommand\sampletext{了亶他件}

und das mache ich für so viele Serien (und Formen), wie ich will oder brauche,

dann bekomme ich

myseries

Die Liste wäre jedoch durch Systembeschränkungen begrenzt.

verwandte Informationen