1

我在这里查看字体文件的代码: http ://www.openobject.org/opensourceurbanism/Bike_POV_Beta_4

代码是这样开始的:

const byte font[][5] = {
  {0x00,0x00,0x00,0x00,0x00},   //   0x20 32
  {0x00,0x00,0x6f,0x00,0x00},   // ! 0x21 33
  {0x00,0x07,0x00,0x07,0x00},   // " 0x22 34
  {0x14,0x7f,0x14,0x7f,0x14},   // # 0x23 35
  {0x00,0x07,0x04,0x1e,0x00},   // $ 0x24 36
  {0x23,0x13,0x08,0x64,0x62},   // % 0x25 37
  {0x36,0x49,0x56,0x20,0x50},   // & 0x26 38
  {0x00,0x00,0x07,0x00,0x00},   // ' 0x27 39
  {0x00,0x1c,0x22,0x41,0x00},   // ( 0x28 40
  {0x00,0x41,0x22,0x1c,0x00},   // ) 0x29 41
  {0x14,0x08,0x3e,0x08,0x14},   // * 0x2a 42
  {0x08,0x08,0x3e,0x08,0x08},   // + 0x2b 43

等等...

我对这段代码的工作方式感到非常困惑——有人可以向我解释一下吗?

谢谢,

马吉德

4

1 回答 1

1

每个 5 字节数组 = 40 位映射到字符网格中的 7x5 = 35 个像素(大概有 5 个未使用的位)。

当您想显示一个字符时,您将该字符对应的 5 字节位图复制到适当的内存位置。例如,显示X您将从中复制数据的字符font['X']

于 2010-05-26T12:46:35.517 回答