jdk7: sun.font.fontManager-Ersetzung / Abrufen von Dateinameninformationen aus dem Schriftartnamen

Verwenden Sie Oracle (Sun) JDK6 und versuchen Sie, auf Oracle JDK7 umzusteigen

ich benutzesun.awt.GraphicsEnvironment um alle Systemschriftarten zu finden, um sie zum Ändern der in meiner PDF-Datei verwendeten PDF-Schriftarten zu verwenden. Hier ist der genaue Code, den ich verwende:

GraphicsEnvironment gEnv = GraphicsEnvironment.getLocalGraphicsEnvironment();

// get all system fonts
final Font[] fonts = gEnv.getAllFonts();

Danach muss ich den genauen Pfad der Schriftdatei auf dem System abrufen, also verwende ich:

FontManager.getFontPath(true) + "/" +
               FontManager.getFileNameForFontName(font_name);

Das Problem ist jetzt dassun.font.FontManager ist keine Klasse mehr und wurde in ein Interface konvertiert. Ich habe online gesucht und einige Lösungen gefunden, mit denen ich nicht zufrieden bin, und ich suche nach anderen Ideen, um mein Problem zu lösen.

Die Lösungen, die ich gefunden habe:

Stellen Sie mein Projekt auf Java 6 statt auf Java 7 bereit (nicht empfehlenswert, da ich einige neue Funktionen in Java 7 verwende).Ich habe den Code der FontManager-Klasse online gefunden, aber für die Verwendung sind viele andere Klassen / Interfaces erforderlich, und der Vorgang scheint unsinnig und zeitaufwändig. Ich bin es auch nicht, wenn ich diesen Code als Eigentum der Sun Company verwenden darf.

Was ich brauche ist: *Eine Möglichkeit, den genauen Pfad der Schriftdatei auf dem System zu ermitteln*. Alle Ideen sind willkommen.

Antworten auf die Frage(1)

Ihre Antwort auf die Frage