Wie verwende ich Liberation-Schriftarten in ConTeXt?

Wie verwende ich Liberation-Schriftarten in ConTeXt?

Ich habe den folgenden Codeausschnitt

\usemodule  [simplefonts][size=12pt]
\setmainfont[DejaVu Sans]

\starttext

Test text

Тестовый текст

\stoptext

Und das funktioniert super. ConTeXt kompiliert es und die Schriftart ist korrekt. Aber wenn ich die Schriftart ändere in

\usemodule  [simplefonts][size=12pt]
\setmainfont[Liberation Sans]

\starttext

Test text

Тестовый текст

\stoptext

Dann wird das Ergebnis die falsche Schriftart sein und der russische Text wird nicht wiedergegeben.

Die Schriftnamen werden aus der Ausgabe des fc-listProgramms (Linux) übernommen. ConTeXt wurde von texlive installiert, Version ist

mtx-context     | ConTeXt Process Management 0.60
mtx-context     |
mtx-context     | main context file: /usr/share/texmf-dist/tex/context/base/context.mkiv
mtx-context     | current version: 2013.05.28 00:36

Antwort1

ConTeXt MkIV verlässt sich nicht auf den Systemschriftmechanismus, um den Schriftnamen abzurufen. Die zurückgegebenen Informationen fc-cachesind daher nutzlos. Verwenden Sie stattdessen das mtx-fontsSkript, um den Namen der Schriftart zu finden.

  1. Laufen

    mtxrun --script fonts --list --pattern=liberation --all
    

    was gibt

    liberationmono                   liberationmono                   LiberationMono-Regular.ttf
    liberationmonobold               liberationmonobold               LiberationMono-Bold.ttf
    liberationmonobolditalic         liberationmonobolditalic         LiberationMono-BoldItalic.ttf
    liberationmonoitalic             liberationmonoitalic             LiberationMono-Italic.ttf
    liberationmononormal             liberationmono                   LiberationMono-Regular.ttf
    liberationsans                   liberationsans                   LiberationSans-Regular.ttf
    liberationsansbold               liberationsansbold               LiberationSans-Bold.ttf
    liberationsansbolditalic         liberationsansbolditalic         LiberationSans-BoldItalic.ttf
    liberationsansitalic             liberationsansitalic             LiberationSans-Italic.ttf
    liberationsansnarrow             liberationsansnarrow             LiberationSansNarrow-Regular.ttf
    liberationsansnarrowbold         liberationsansnarrowbold         LiberationSansNarrow-Bold.ttf
    liberationsansnarrowbolditalic   liberationsansnarrowbolditalic   LiberationSansNarrow-BoldItalic.ttf
    liberationsansnarrowitalic       liberationsansnarrowitalic       LiberationSansNarrow-Italic.ttf
    liberationsansnarrownormal       liberationsansnarrowitalic       LiberationSansNarrow-Italic.ttf
    liberationsansnormal             liberationsans                   LiberationSans-Regular.ttf
    liberationserif                  liberationserif                  LiberationSerif-Regular.ttf
    liberationserifbold              liberationserifbold              LiberationSerif-Bold.ttf
    liberationserifbolditalic        liberationserifbolditalic        LiberationSerif-BoldItalic.ttf
    liberationserifitalic            liberationserifitalic            LiberationSerif-Italic.ttf
    liberationserifnormal            liberationserifitalic            LiberationSerif-Italic.ttf
    
  2. Wenn die Schriftarten oben nicht aufgelistet sind, generieren Sie die Schriftartendatenbank neu.

     mtxrun --script font --reload --force
    
  3. Wenn die Schriftarten immer noch nicht aufgelistet sind, überprüfen Sie den Wert der OSFONTDIRVerwendung

    mtxrun --expand-var OSFONTDIR
    

    Sie können den Suchpfad erzwingen mit

     OSFONTDIR=/path/to/font mtxrun --script font --reload --force
    

verwandte Informationen