标签: freetype2
我正在尝试使用Freetype呈现文本,以便在Raspberry Pi上运行的SDL / framebuffer应用程序中使用。这就是我现在所看到的:
请参阅2015年的“0”和“1”?他们太靠近了。看起来不错。
我的代码将文本绘制到图像缓冲区中:
moderate
字距调整似乎与我提供的任何模式没有任何区别。 (kerning.x始终为0)
我在这里做错了什么?
答案 0 :(得分:3)
问题在于我没有考虑字形结构中的bitmap_top和bitmap_left调整。
在我计算Px和Py位置后,我添加了这段代码:
if (Fnt->glyph->format == FT_GLYPH_FORMAT_BITMAP) { Px += Fnt->glyph->bitmap_left; Py = (AscentF >> FShift) - Fnt->glyph->bitmap_top; }
现在'1'已正确移动到位。这就是现在的样子: