Ich habe vor kurzem Prawn (Version 2.0.2 mit prawn-table
Version 0.2.2) verwendet, um eine PDF in Japanisch zu generieren, und hatte leider kein Glück mit irgendeiner der in der angenommenen Antwort geposteten TTF-Fonts (die akzeptierte Antwort) war immer noch eine große Hilfe, zu wissen, dass japanischer Text nicht mit den eingebauten Schriften von Prawn gerendert werden kann!).
Ich hatte jedoch Glück mit den TTF-Dateien von IPA fonts mit Prawn, speziell die "4 Schriftarten-Paket" sie auf der Seite aufgelistet, die die IPA Mincho und IPA Gothic-Schriften enthält. Ich habe die IPAPMincho Schriftart (ipamp.ttf
) für "normale" Schriftart und IPAPGothic (ipagp.ttf
) für "fett"; es sind verschiedene Schriftarten, aber eine funktionierte für mich als die "fette Version" der anderen.
In meiner Prawn-Konfiguration verwendete ich Standardschriftarten, wo ich konnte (sagen wir für englische Dokumente), aber die TTF-Dateien für Japanisch, die im Handumdrehen konfiguriert wurden. Dies führte zu einem Code, der dem folgenden ähnelte:
Prawn::Document.generate("MyJapaneseDocument.pdf") do |pdf|
# assume `font_name` here is something like "IPA",
# ie not a font that is shipped with the Prawn gem
unless Prawn::Font::AFM::BUILT_INS.include?(font_name)
pdf.font_families.update(
font_name => {
normal: "path/to/ipamp.ttf",
bold: "path/to/ipagp.ttf"
}
)
end
pdf.font font_name
end
+1 für die Verfolgung und das Lösen Ihrer eigenen Frage (bitte kreuzen Sie auch Ihre eigene Antwort an, um es zu lösen). Wenn es einen anderen interessanten Code gibt, den Sie verwendet haben, um ihn zum Laufen zu bringen, fügen Sie ihn bitte Ihrer Antwort für zukünftige Benutzer hinzu. –