Die Schriftart kann nicht in JRE 8 geladen werden

8

Ich kann keine Schriftart aus einem S3-Eingabestream in JRE 8 laden. Ich habe kein Problem, wenn ein System mit JRE 7, JDK 7 oder sogar JDK 8 installiert ist.

%Vor%

Der Fehler, den ich bekommen habe, ist

%Vor%

Ich habe versucht, den Inputstream in eine temporäre Datei zu laden, aber das hilft nicht. Ich habe auch versucht, eine Schriftart direkt aus einer lokalen Datei zu laden, aber ich habe einen anderen Fehler beim Abrufen von Schriftart-Metadaten bekommen. Hier ist das Fehlerprotokoll.

%Vor%

Das ist also kein Problem mit inputstream, sondern mit dem Laden der Schriftart selbst in JRE 8.

Dies scheint ein Fehler in JRE 8 Font zu sein.

Ich lade eine Schriftart, um eine Zeichenkette in einem Bild zu zeichnen. Mein Code wird in einem Docker-Container mit Bildern Java: 7-jre (ok), java: 7-jdk (ok), java: 8-jre (fehlgeschlagen), java: 8-jdk (ok).

    
Khanetor 03.06.2015, 16:50
quelle

4 Antworten

4

Es stellt sich heraus, dass dies ein Problem mit der openjdk-8-jre-headless Installation ist. Dies ist die Installation im Docker-Image für Java 8 JRE. Ich installiere einfach openjdk-8-jre (ohne Kopflos) und das Problem verschwindet.

Wenn Sie sich das Fehlerprotokoll ansehen, erfordert das Laden der Schriftart awt X11, das in headless version von JRE fehlt.

    
Khanetor 04.06.2015, 17:19
quelle
3

Ich habe den gleichen Fehler in openjdk gefunden: 8-jre-alpine. Der Wechsel zu openjdk: 8-jre hat auch geholfen. (apt-get-Zeile scheint nicht notwendig)

%Vor%     
leoleozhu 20.11.2017 06:22
quelle
1

Auf CentOS Headless JRE fehlt die fontconfig Abhängigkeit:

%Vor%

Außerdem muss möglicherweise mindestens eine Schriftart installiert werden ( dejavu , liberation usw.).

    
Vertigo 20.09.2016 15:06
quelle
0

Für mich ist das Problem gelöst:

%Vor%     
Rax 28.07.2016 15:33
quelle

Tags und Links