我目前正在尝试为PySDL2制作位图字体,但字符间距有问题。API需要一个表面、通用字符标志符宽度&;高度和字符映射。字体是通过从指定宽度的位图读取字形创建的;通过将高度与输入的贴图相关联来确定高度
bmpfont = sdl2.ext.BitmapFont(font_surface, (64, 64), mapping)
我知道很多游戏开发框架都使用类似的模式,但是通过在位图中提供特定的字形宽度、高度和偏移量,允许XML列表来说明不同大小的字符(例如,“w”是短的和胖的,而“|”是高的和瘦的)。PySDL2 BitmapFontdocumentation显示了一个偏移量字典,但据我所知(通过多次尝试迭代),它无法被操作以实现类似的目标
正如我下面的例子中使用“|”和“j”所看到的,间距看起来很傻,因为每个字符都被读取为64x64像素,而且由于前面提到的原因,我无法控制该间距
由于项目的要求,这是要集成到,它必须是位图字体,我不能利用类似的TTF库PySDL2。非常感谢您的帮助
我认为使用
py-sdl2
的ext.font
库不可能做到这一点,但通常手动执行此操作的方法是查找glyph,查找其边,并根据其各自的边界框复制每个边。这里有一个指南,用C++和SDL2:^ a1}完整地描述这个过程。相关问题 更多 >
编程相关推荐