Ich erzeuge PDF mit Grails-Export-Plugin (im Grunde, Flying Saucer). Meine GSP-Seite ist eine UTF-8-Seite (oder zumindest Eigenschaften zeigen, dass es UTF-8 ist, auch am Anfang der GSP-Seite gibt es eine <?xml version="1.0" encoding="UTF-8"?>
-Direktive). Zunächst generierte PDF korrekt umlaute Zeichen "äöüõ", aber kyrillische Zeichen fehlten in PDF (nicht gerendert). Dann habe ich meine CSS-Datei wie in der Dokumentation beschrieben geändert, indem ich Folgendes hinzugefügt habe:
ArialUni.ttf wird auch auf dem Server bereitgestellt. Aber jetzt bekomme ich sowohl Umlaut-Zeichen als auch kyrillische Zeichen, die als Kästchen wiedergegeben werden. Wenn ich den Wert der Eigenschaft -fs-pdf-encoding-Eigenschaft in Identity-H ändere, werden Umlautzeichen korrekt gerendert, aber kyrillische Zeichen werden als Fragezeichen dargestellt.
Irgendwelche Ideen, welche Schriftart verwendet werden kann, um sowohl Umlaute als auch kyrillische Zeichen richtig darzustellen? Oder ist mein CSS irgendwie falsch? Alle Hinweise würden sehr geschätzt werden.
Upd 1: Ich habe auch versucht, css (was von Ссылка ) generiert wurde:
%Vor% Ich habe <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
hinzugefügt
Ich versuchte auch, Grails mit -Dfile.encoding = UTF-8 zu laufen, wie hier erwähnt: Ссылка , aber nichts hilft. Kyrillische Zeichen werden überhaupt nicht angezeigt. Irgendwelche anderen Ideen, was könnte das Problem sein?
* BTW: * Ich packe mein PDF als zip und sende es zurück an den Browser in der Antwort wie folgt:
%Vor%Muss ich die Codierung beim Zippen irgendwie in Erwägung ziehen ???, was mir gefällt:
%Vor%Aus irgendeinem Grund hat es angefangen, mit der folgenden css- und .ttf-Datei zu arbeiten, die von face-kit-generator erzeugt wurde:
%Vor%Sonderbare Sache ist, dass, wenn ich Schriftart in einen Ordner lege, sagen wir "Fonts", es wird die Schriftart finden, aber Zeichen werden nicht gerendert.
Ich habe es geschafft, Unicode-Zeichen (kyrillisch oder tschechisch) innerhalb von Java-Code zu "aktivieren" und außerdem eine TrueType-Schriftart in meinen Ressourcen (CALIBRI.TTF) bereitzustellen.
%Vor%Schließlich habe ich die Schriftfamilie "Calibri" in den css-Abschnitt meines Dokuments eingefügt:
%Vor%Tags und Links css grails encoding flying-saucer pdf-generation