Ich habe einige TTF-Schriftarten auf dem System installiert.
Ich bekomme diese Liste mit
%Vor%Dies ist nicht nur TTF-Schriften, sondern alle Schriften, die ich denke. Schließlich wenn ich verwende:
%Vor%Ich kann awt.Font-Instanz bekommen.
Soweit ich weiß, ist Font nicht mit tatsächlichem PhysicalFont verbunden, also Wie kann ich entweder ttf font-Datei oder Byte-Daten aus dieser ttf-Datei für eine Schriftart aus dieser Liste oder von awt.Font abrufen? Ich versuche, eine physische Schriftartdaten oder ähnliches zu erhalten. Diese Daten sollten irgendwo richtig sein?
Der Grund, warum ich es brauche, ist die Verwendung mit libGDX FreeTypeFontGenerator um BitmapFont zu generieren
Dies muss mit Windows, OSX und Linux funktionieren.
Es ist nicht möglich. Das Beste, was Sie tun können, ist Verwendung der Reflektion , aber es funktioniert nur mit einer Oracle JRE und greift auf eine private API zu, so dass es möglicherweise zu einer neuen Oracle-Version kommt.
Sie könnten wahrscheinlich eine native lib schreiben, um die Schriften und ihre Dateien aufzulisten.
Wie @NateS gezeigt hat, scheint es, was ich erreichen möchte, nicht genau möglich.
Also werde ich nur die Lösung teilen, die ich in meinem Fall für jetzt verwendet habe:
Was ist diese Klasse: FontManager.java
Dies ermöglicht es, vorhandene ttf-Dateien an bekannten Systemstandorten basierend auf Ihrem System vorzucachen und dann eine Zuordnung für fontName- & gt; fontFile-Verbindungstyp zu erstellen. Dies geht dann zu den Voreinstellungen und wird beim nächsten Lauf geladen.
Bekannte Probleme sind
Es wäre ideal, eine native lib zu schreiben, aber die Zeit ist eine Essenz ...
Tags und Links java fonts libgdx true-type-fonts