簡體   English   中英

在 PIL 中使用像素 fonts

[英]Using pixel fonts in PIL

我正在使用包含許多精確放置的文本字符串的 PIL 創建圖像。 我的第一次嘗試是將像素 fonts 轉換為與 pil 兼容的格式,如此所述。 例如,我下載 Silkscreen 字體並進行轉換:

otf2bdf -p 8pt -o fonts/slkscr.bdf fonts/slkscr.ttf 
pilfont.py fonts/slkscr.bdf

然后我可以像這樣在 PIL 中使用字體:

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")

但是,生成的圖像(替代文字 ) 不反映字體應該是什么樣子

我應該使用什么程序來轉換和使用像素 fonts 以便它們按預期呈現?

提前致謝。

尤里卡!

只需為 otf2bdf 指定 72 dpi 的分辨率(默認為 100):

otf2bdf -p 8 -r 72 -o fonts/slkscr.bdf fonts/slkscr.ttf

現在,替代文字 看起來很棒!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM