Seite 1 von 3

Kapitälchen mit Times New Roman

Verfasst: Do 23. Jan 2014, 14:41
von MoonKid
Ich möchte gerne Kapitälchen mit Time New Roman haben. Das gibt der Font aber nicht her, wie beim XeLaTeX lauf zu sehen ist.
\documentclass{scrartcl}

\usepackage{xltxtra}
\defaultfontfeatures{Mapping=tex-text}
\usepackage{polyglossia}
\setdefaultlanguage[spelling=new]{german}

\setmainfont{Times New Roman}

\begin{document}
\textsc{Kapitälchen bitte}
\end{document}
Welche Möglichkeiten hätte ich für eine ähnliche Hervorhebung, ohne fett, kursiv oder eine andere Schriftart nehmen zu müssen. Auch die Times-Klone aus Vorgabegründen hier keine Option.

Verfasst: Do 23. Jan 2014, 15:04
von Besserwisser
Wenn Du Times New Roman nehmen musst und Kapitälchen brauchst, dann lass Dir diese zur Verfügung stellen. Die gibt es kommerziell, aber auch als Bestandteil von Windows 8.1 (nicht jedoch Windows 8).

Man kann nicht von Dir einen bestimmten Font verlangen, diesen aber nicht zur Verfügung stellen.

Verfasst: Do 23. Jan 2014, 16:01
von Johannes_B
Da hat Besserwisser genau Recht. Schriftlizenzen kosten Geld, und das hat seine Gründe. Mythos Schriftlizenzen.

Zeig doch den Vorgebenden ein paar Times-Klone (bspw. TG Termes), dann können sie sich für einen entscheiden.

Verfasst: Do 23. Jan 2014, 21:00
von MoonKid
Zum Thema Vorgabe: Also Times New Roman ist die Vorgabe. Das mit den Kapitälchen ist eher mein Wunsch. Sieht einfach geiler aus. ;)

Das ist eine vorläufige Lösung.
\documentclass{scrartcl}

\usepackage{xltxtra}
\defaultfontfeatures{Mapping=tex-text}
\usepackage{polyglossia}
\setdefaultlanguage[spelling=new]{german}

\setmainfont{Times New Roman}

\begin{document}
\fontspec{texgyretermes-regular.otf}
\textsc{Kapitälchen bitte}

\rmfamily
Kapitälchen bitte
\end{document}
Dabei ist zu beachten, dass der otf-Font bei XeLaTeX mit dem Dateinamen (nicht unbedingt Pfad) aufgerufen werden muss. Nur mit dem Namen wird es nicht gefunden. Das steht auch so in der fontspec-Docu.

Aber so zufrieden bin ich mit der Lösung noch nicht. Mainfont ist "Times New Roman". Die TeXGyre-Schrift soll nur in einem isolierten Bereich verwendet werden.
Das "Zurückschalten" zum default-font mit \rmfamily finde ich unglücklich. Das mit dem Kapitälchen will ich später in ein eigenes Makro packen. Das Makro soll am Ende die TeXGyre-Schrift wieder ausschalten und zum vorherigen Font zurückkehren. Ob dies aber nun der mainfont, sansfont war, weiß doch mein Makro nicht.
Versteht hier was ich meine?
Ich möchte zum vorherigen font zurückschalten können, ohne zu wissen welcher es war - das soll fontspec selber wissen.
Gibt es nicht sowas wie \usedefaultfont oder \mainfont.

Ich hatte auch die Option "SmallCapsFont" gefunden. Aber bei folgender Variante findet er die otf-Datei nicht.
\setmainfont[SmallCapsFont={texgyretermes-regular.otf}]{Times New Roman}

Verfasst: Fr 24. Jan 2014, 08:41
von Besserwisser
MoonKid hat geschrieben:Dabei ist zu beachten, dass der otf-Font bei XeLaTeX mit dem Dateinamen (nicht unbedingt Pfad) aufgerufen werden muss. Nur mit dem Namen wird es nicht gefunden. Das steht auch so in der fontspec-Docu.
Nein, da steht, dass man Fonts nur dann nach Namen auswählen kann, wenn sie als Systemfont installiert sind. Nachdem ich sowohl Times New Roman als auch TeX Gyre Roman als Systemfonts installiert habe, ergibt folgendes Beispiel:
\documentclass{scrartcl}

\usepackage{xltxtra}
\defaultfontfeatures{Mapping=tex-text}
\usepackage{polyglossia}
\setdefaultlanguage[spelling=new]{german}

\setmainfont[%
  SmallCapsFont={TeX Gyre Termes},
  SmallCapsFeatures={Letters=SmallCaps}
]{Times New Roman}

\begin{document}
\textsc{Kapitälchen bitte}
\end{document}
mit XeLaTeX (oder LuaLaTeX) übersetzt das Ergebnis:
Bild
MoonKid hat geschrieben:Gibt es nicht sowas wie \usedefaultfont oder \mainfont.
Es gibt \normalfont. Obige Lösung dürfte aber vermutlich besser sein.

Genau genommen verstößt Du damit aber natürlich bereits gegen die Vorgabe Times New Roman zu verwenden. Wenn Du bei den SmallCaps dagegen verstößt, kannst Du auch gleich bei allen Schnitten dagegen verstoßen und insgesamt die TeX Gyre nehmen. Falls das jemandem auffällt, wird vermutlich ein automatisches Testtool verwendet. Das dürfte dann aber auch über die SmallCaps stolpern.

Verfasst: Fr 24. Jan 2014, 12:38
von MoonKid
Sehr g..l!

Das kommt davon, wenn man CTAN TeX Live verwendet, was alle seine Schriften nicht ins System einbindet. Hab jetzt einfach noch die passenden font-Packete von Ubuntu nachinstalliert.

Ein Problem hat er bei mir aber noch.
*************************************************
* fontspec warning: "icu-feature-not-exist-in-font"
* 
* OpenType feature 'Letters=SmallCaps' (+smcp) not available for font 'TeX
* Gyre Termes' with script '' and language ''.
*************************************************
*************************************************
* fontspec warning: "icu-feature-not-exist-in-font"
* 
* OpenType feature 'Letters=SmallCaps' (+smcp) not available for font 'TeX
* Gyre Termes' with script '' and language ''.
*************************************************
*************************************************
* fontspec warning: "icu-feature-not-exist-in-font"
* 
* OpenType feature 'Letters=SmallCaps' (+smcp) not available for font 'TeX
* Gyre Termes' with script '' and language ''.
*************************************************
*************************************************
* fontspec warning: "icu-feature-not-exist-in-font"
* 
* OpenType feature 'Letters=SmallCaps' (+smcp) not available for font 'TeX
* Gyre Termes' with script '' and language ''.
*************************************************
Er spuckt ein PDF aus, aber es sind keine Kapitälchen.

"language" hab ich ja eigentlich gesetzt. Und was meint er mit "script"?

Hab auch alle Ausgabedateien mal zur Sicherheit gelöscht. Ändert aber nix.

EDIT: Auf einem anderen Ubuntu-System habe ich die Schrift-Packete nicht installiert, sondern die otf-Files aus meiner bestehenden CTAN-TeX-Live Installation als Systemschriftart hinzugefügt/installiert. Die Fehlermeldung bleibt die gleiche.

EDIT2: Hab mir jetzt mal Abschnitt 10.18 der fontspec-Doku angeschaut. Auch das explizite Setzen von "Script" und "Language" ändert nichts. Habe bei "Script" "Default" und "Latin" probiert.
Evtl. hast du eine neuere Version der Schrift installiert? Mein TeX Live ist aber aktuell vom CTAN-Repository. Kann ich mir ne Versionsnummer einer otf-Datei anzeigen lassen?

Verfasst: So 26. Jan 2014, 23:24
von MoonKid
Hab jetzt nochmal mit dem "Script" alle CTAN TeX Live fonts dem System bekannt gemacht.
echo "<dir>/usr/local/texlive/2013/texmf-dist/fonts/</dir>" &> /etc/fonts/local.conf                                
fc-cache -v
Auch das ändert nix im Verhalten. Jetzt bin ich echt überfragt.

Verfasst: Mo 27. Jan 2014, 13:00
von Noch so einer
Ich weiß nicht, ob das so geht, denn eigentlich stehen die dir-Tags noch in fontconfig-Tags. Jedenfalls habe ich unter Linux schlicht eine /etc/fonts/conf.d/09-texlive.conf mit dem Inhalt:
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
  <dir>/usr/local/texlive/2013/texmf-dist/fonts/opentype</dir>
  <dir>/usr/local/texlive/2013/texmf-dist/fonts/truetype</dir>
  <dir>/usr/local/texlive/2013/texmf-dist/fonts/type1</dir>
</fontconfig>
Damit sind alle opentype, truetype und type1 fonts von texlive nach einem "sudo fc-cache"-Aufruf gleichzeitig als Systemfonts verfügbar. Wenn man das auf Benutzerebene machen will, muss man die Datei AFAIK in ~/.fonts.config.d ablegen.

fc-list führt bei mir dann auch die entsprechenden Fonts mit auf, beispielsweise:
/usr/local/texlive/2013/texmf-dist/fonts/opentype/public/tex-gyre/texgyretermes-regular.otf: TeX Gyre Termes:style=Regular

Verfasst: Mo 27. Jan 2014, 14:16
von MoonKid
Noch so einer hat geschrieben:fc-list führt bei mir dann auch die entsprechenden Fonts mit auf, beispielsweise:
/usr/local/texlive/2013/texmf-dist/fonts/opentype/public/tex-gyre/texgyretermes-regular.otf: TeX Gyre Termes:style=Regular
Bei mir auch. Ein dir-Tag reicht völlig.
user@pc-kubuntu:~/share/Latex/tut/apa$ fc-list | grep texgyretermes
/usr/share/texmf/fonts/opentype/public/tex-gyre/texgyretermes-italic.otf: TeX Gyre Termes:style=Italic
/usr/local/texlive/2013/texmf-dist/fonts/opentype/public/tex-gyre/texgyretermes-bold.otf: TeX Gyre Termes:style=Bold
/usr/local/texlive/2013/texmf-dist/fonts/opentype/public/tex-gyre/texgyretermes-italic.otf: TeX Gyre Termes:style=Italic
/usr/share/texmf/fonts/opentype/public/tex-gyre-math/texgyretermes-math.otf: TG Termes Math:style=Regular
/usr/share/texmf/fonts/opentype/public/tex-gyre/texgyretermes-bolditalic.otf: TeX Gyre Termes:style=Bold Italic
/usr/local/texlive/2013/texmf-dist/fonts/opentype/public/tex-gyre-math/texgyretermes-math.otf: TeX Gyre Termes Math:style=Regular
/usr/local/texlive/2013/texmf-dist/fonts/opentype/public/tex-gyre/texgyretermes-regular.otf: TeX Gyre Termes:style=Regular
/usr/local/texlive/2013/texmf-dist/fonts/opentype/public/tex-gyre/texgyretermes-bolditalic.otf: TeX Gyre Termes:style=Bold Italic
/usr/share/texmf/fonts/opentype/public/tex-gyre/texgyretermes-regular.otf: TeX Gyre Termes:style=Regular
/usr/share/texmf/fonts/opentype/public/tex-gyre/texgyretermes-bold.otf: TeX Gyre Termes:style=Bold

Verfasst: So 8. Mai 2016, 15:01
von MoonKid
Der Thread ist alt, aber das Problem besteht weiterhin.

Aktuelles Minibeispiel
\documentclass{scrartcl}

\usepackage{xltxtra}
\defaultfontfeatures{Mapping=tex-text}
\usepackage{polyglossia}
\setdefaultlanguage[spelling=new]{german}

% Times New Roman enthält keine Kapitälchen/SmallCaps!
% daher wird „TeX Gyre Termes“ als Times-Clone für die SmallCaps verwendet
\setmainfont[%
    SmallCapsFont={TeX Gyre Termes},
    SmallCapsFeatures={Letters=SmallCaps}
]{Times New Roman}

\begin{document}
\textsc{Kapitälchen bitte}

\textsc{KAPITÄLCHEN}

Keine Kapitälchen.
\end{document}
Ausschnitt aus dem log
*************************************************
* fontspec warning: "icu-feature-not-exist-in-font"
* 
* OpenType feature 'Letters=SmallCaps' (+smcp) not available for font 'TeX
* Gyre Termes' with script '' and language ''.
*************************************************
*************************************************
* fontspec warning: "icu-feature-not-exist-in-font"
* 
* OpenType feature 'Letters=SmallCaps' (+smcp) not available for font 'TeX
* Gyre Termes' with script '' and language ''.
*************************************************
*************************************************
* fontspec warning: "icu-feature-not-exist-in-font"
* 
* OpenType feature 'Letters=SmallCaps' (+smcp) not available for font 'TeX
* Gyre Termes' with script '' and language ''.
*************************************************
*************************************************
* fontspec warning: "icu-feature-not-exist-in-font"
* 
* OpenType feature 'Letters=SmallCaps' (+smcp) not available for font 'TeX
* Gyre Termes' with script '' and language ''.
*************************************************
Die Frage lautet erstmal, wie ich sicher gehen kann, dass das bei mir installierte TeX Gyre Termes tatsächlich auch Kapitälchen kann. Der KDE-Schriftartenbetrachter (Kubuntu 14.04.3) schweigt sich da aus. Er kann zwar zich Unicode-Blöcke anzeigen, aber mir ist nicht klar, welcher davon die Kapitälchen enthalten sollte.

Gibt es evtl. eine externe Quelle, wo ich checken kann, ob diese Schriftart das kann?

Übrigens ist das Problem mit Latin Modern Roman das gleiche, obwohl diese angeblich SmallCaps kann.