chr=chr-' ';//得到偏移后的值 ------------定义的字库是从 空格 开始的,
请看:/*
***********************************************
8×16点阵西文字库文件,字的横向8点构成一字节,
左边点在字节的高位,字符点阵四角按:
左上角→右上角→左下角→右下角取字
**********************************************
*/
const unsigned char ASCII_16_Dot[ ] = {
/* CHAR_20 */
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
/*! CHAR_21 */
0x00,0x00,0x18,0x3C,0x3C,0x3C,0x18,0x18,
0x18,0x00,0x18,0x18,0x00,0x00,0x00,0x00,
/*" CHAR_22 */
0x00,0x66,0x66,0x66,0x24,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
/*# CHAR_23 */
0x00,0x00,0x00,0x6C,0x6C,0xFE,0x6C,0x6C,
0x6C,0xFE,0x6C,0x6C,0x00,0x00,0x00,0x00,
/*$ CHAR_24 */
0x18,0x18,0x7C,0xC6,0xC2,0xC0,0x7C,0x06,
0x86,0xC6,0x7C,0x18,0x18,0x00,0x00,0x00,
/*% CHAR_25 */
0x00,0x00,0x00,0x00,0xC2,0xC6,0x0C,0x18,
0x30,0x60,0xC6,0x86,0x00,0x00,0x00,0x00,
/*& CHAR_26 */
0x00,0x00,0x38,0x6C,0x6C,0x38,0x76,0xDC,
0xCC,0xCC,0xCC,0x76,0x00,0x00,0x00,0x00,
/*' CHAR_27 */
0x00,0x30,0x30,0x30,0x60,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
/*( CHAR_28 */
0x00,0x00,0x0C,0x18,0x30,0x30,0x30,0x30,
0x30,0x30,0x18,0x0C,0x00,0x00,0x00,0x00,
/*) CHAR_29 */
0x00,0x00,0x30,0x18,0x0C,0x0C,0x0C,0x0C,
0x0C,0x0C,0x18,0x30,0x00,0x00,0x00,0x00,
/*以下省略部分为: 其它的字库点阵数据*/
/*
******
******
******
*/
}
那么从这个字库中,就可以得到: 例如左括号“ (” 在字库中的偏移就是:
0x28 -0x20 =0x08;
这就是程序语句 char =char -' '; //说明:单引号内的字符是 空格!!!
|