Frage
Ich schaffe Bilder PIL verwenden, die zahlreiche genau platziert Textzeichenfolgen enthalten. Mein erster Versuch war Pixel-Fonts in das pil-kompatibles Format zu konvertieren, wie hier . Zum Beispiel, lade ich die Silksreen Schriftart und wandeln es:
otf2bdf -p 8pt -o fonts/slkscr.bdf fonts/slkscr.ttf
pilfont.py fonts/slkscr.bdf
Ich kann dann die Schriftart in PIL verwenden wie folgt:
import Image, ImageDraw, os, sys, ImageFont
im = Image.new("RGB", (40,10))
draw = ImageDraw.Draw(im)
fn = ImageFont.load('fonts/slkscr.pil')
draw.text((0,0), "Hello", font=fn)
del draw
# write to stdout
im.save(sys.stdout, "PNG")
Allerdings ist das resultierende Bild () spiegelt nicht, was die Schrift wie aussehen sollte
Welches Verfahren soll ich zu konvertieren und zu verwenden Pixel-Fonts verwenden, so dass sie wie beabsichtigt machen?
Vielen Dank im Voraus.
Lösung
Eureka!
Just benötigt eine Auflösung von 72 dpi angeben (Standard: 100) für otf2bdf:
otf2bdf -p 8 -r 72 -o fonts/slkscr.bdf fonts/slkscr.ttf
Jetzt sieht gut aus!
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow