Problem
Sie haben Ihrer Anwendung Schriftarten hinzugefügt (/apps/yourapplication/fonts/). Schriftarten werden korrekt angezeigt, bis Sie Ihre Instanz neu starten. Nach dem Neustart sind die Schriftarten Systemschriftarten. Sie verwenden com.day.image.Font.
Lösung
Verwenden Sie com.day.cq.image.Font anstelle von com.day.image.Font.
Diese Klasse ist ein Container für die Klasse com.day.image.Font, die die Funktionalität zur nahtlosen Unterstützung mehrerer Schriftformate und -quellen bietet. Alle API-Methoden werden an eine Instanz der (eine Erweiterung von der) Klasse com.day.image.Font delegiert, die im Konstruktor eingerichtet ist.
Der Konstruktor testet eine Liste der konfigurierten Schriftartenanbieter, um den Delegierten zu erhalten. Er fällt zurück auf die Klasse com.day.image.Font, wenn keiner der konfigurierten Schriftartenanbieter die gewünschte Schriftart bereitstellen kann.
Weitere Informationen
Wenn die Schriftart importiert ist (das heißt, „dem Schriftartenverzeichnis hinzugefügt“), lädt das System die Schriftart über die Klasse java.awt.Font zur Registrierung in der .fontlist. Dann ist die Schriftart nicht nur dem ContentBus bekannt, sondern auch dem System. com.day.image.Font kennt nur die Schriftarten, die der Java-VM auch über die Klasse java.awt.Font bekannt sind. Daher funktioniert das Skript nach dem Import, aber nicht nach dem Neustart, wenn das System die Schriftart nicht mehr kennt.