在Linux中使用C语言在帧缓冲区上绘制文本

9
如何在映射为数组的帧缓冲区中绘制文本?需要的是表示单个字符的方法,以及以不太低效的方式逐像素绘制字符。字符的表示最好仅在代码中定义,不需要第三方库。
有人知道是否有可用于自由使用的此类代码或工具,可生成字体的数据定义,用于程序代码中,例如位图字形/字符值的数组?

意图是将结果显示在屏幕上还是写入文件? - Mark Ransom
1
为了在屏幕上显示,最好达到60fps。 - grrussel
3个回答

4

我没有关于帧缓冲的具体信息,但是我有一种有趣的编码字体的方法。

如果您有一个可以写入XBM格式的应用程序,您可以通过创建包含所有字符的图像来编码字体。 XBM文件可以作为C或C ++文件包含,并且通过使用适当的偏移量,您可以轻松访问单个字符。确保每个字符从可被8整除的X坐标开始,因为该图像以每个像素一个位的方式编码;任何不在8位边界上对齐的内容都需要进行掩码和移位。


0

1
链接已经失效。这是为什么仅有链接的回答没有用处的一个典型例子。 - Cris Luengo

-2

要在2D数组上画一条线,请使用Besengam算法

要使用直线绘制字符,请使用一系列的moveTo、lineTo构建您的字母表。例如,对于一个简单的'L':

image.moveTo(0,-fontHeight);
image.lineTo(0, 0);
image.lineTo(fontWidth,0);

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接