用c加载位图字体



我正在处理一些位图字体
这里的想法是给我两个文件
input.txt和font.txt。我必须从input.txt文件中读取一个字符串,并使用font.txt对其进行转换,然后将相应的输出打印到另一个文件output.txt。font.txt中的每个字符都由一个16x8的网格表示。例如:

"A"=  
0x00,  
0x00,  
0x10,  
0x38,  
0x6c,  
0xc6,  
0xc6,  
0xfe,  
0xc6,  
0xc6,  
0xc6,  
0xc6,  
0x00,  
0x00,  
0x00
0x00

有人能告诉我如何将存储在文件中的上述格式加载到数据结构中吗。

看看这个SO解决方案,看看如何在c.中逐行读取

我假设您使用ASCII,并且您的数组大小是恒定的。您可以简单地在每行的开头检查",在这种情况下,您可以假设它是您的字母的标识符,否则您可以将值逐行读取到16x8数组中,如果有,则在末尾删除。

检查"可以简单地通过直接比较来完成,因为它是一个ascii字符。

if (myline[0] == 34) {...};

获取信件可以用同样的方法:

char myletter = myline[1];

您也可以使用scanf来解析格式化的行。此外,如果你有可能在C++中工作,这将使你的生活变得更轻松,因为你可以访问更高级别的方法。

最新更新