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 (alt text) 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.

War es hilfreich?

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 alt text sieht gut aus!

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top