Mehrsprachiger Text mit PIL zeichnen

8

Ich habe Probleme beim Zeichnen mehrsprachigen Textes mit PIL. Sagen wir, ich möchte einen Text zeichnen - "ひ ら が な - Hiragana, 히라가나". Aber die ImageDraw.text () -Funktion von PIL nimmt immer nur eine Schrift nach der anderen, daher kann ich diesen Text nicht korrekt zeichnen, da er alle englischen, japanischen und koreanischen Schriften benötigt.

Bislang hatte ich kein Glück, eine einfache Lösung zu finden, wie zB die Übergabe mehrerer Schriften an PIL, so dass es für jedes Unicode-Zeichen die passende Schriftart auswählen kann (wie moderne SDK oder Webbrowser).

Was ich denke ist, dass ich über jedes Zeichen iterieren und bestimmen soll, welche Schriftart ich für jeden Charakter selbst verwenden soll. Aber ich kann nicht umhin zu denken, dass es einen einfacheren Weg geben muss, dies zu tun.

Gehe ich in die richtige Richtung? Gibt es keinen einfacheren Weg?

PS) Es ist in Ordnung, eine andere Sprache oder eine andere Bildgebungsbibliothek zu verwenden, wenn es eine viel bessere Lösung gibt.

    
redism 10.07.2012, 10:51
quelle

1 Antwort

9

Sie müssen nur eine Unicode-Schriftart auswählen. Beispiel:

%Vor%

    
dda 12.07.2012, 18:37
quelle