📄 mkfont.c
字号:
#include "mkfont1.c"/* this program takes 102 width values (one per line) in the order provided bu Graphic Systems and prepares a C-compileable width table.*/char ibuf[512];int id;int width[102];int ascii[102];int zero;int emw, hyw;int xxx;main(argc,argv)int argc;char **argv;{ register i, j; register char *p; while((--argc > 0) && ((++argv)[0][0]=='-')){ switch(argv[0][1]){ default: continue; } } if(argc){ if((id=open(argv[0],0)) < 0){ printf("Cannot open: %s.\n",argv[0]); exit(1); } } j = read(id,ibuf,512); p = ibuf; for(i=0; i<102; i++){ width[i] = atoi(p); while(*p++ != '\n'); } for(i=0; i<102; i++){ if(font[i].name < 0177){ ascii[i] = font[i].name; }else{ for(j=0; chtab[j] != 0; j =+ 2){ if(font[i].name == chtab[j])break; } ascii[i] = chtab[j+1] & 0377; if(chtab[j] == 'hy')hyw = width[i]; if(chtab[j] == 'em')emw = width[i]; } } printf("char XXw[256-32] {\t/*XX*/\n"); for(i=040; i<256; i++){ if(i == 0377){ printf("0};\n"); break; } if(i == 0177){ printf("6,\t %s\n",nametab[i-040]); continue; } if(i == 0226){ printf("3,\t %s\n",nametab[i-040]); continue; } if(i == ' '){ printf("12,\t %s\n",nametab[i-040]); continue; } if(i == '-'){ printf("%d,\t %s\n",hyw,nametab[i-040]); continue; } for(j=0; j<102; j++){ if(ascii[j] == i)break; } if(j == 102){ printf("0,"); zero++; if(nametab[i-040]){ printf("\t %s\n",nametab[i-040]); zero = 0; }else if(i < 0177){ printf("\t /*%c*/\n",i); zero = 0; } if(zero && !((i+1)%8)){ printf("\n"); zero = 0; } }else{ if(zero){ zero = 0; printf("\n"); } printf("%d",width[j]); if(font[j].ctval)printf("+0%d00, ",font[j].ctval); else printf(",\t "); printf("%s\n",nametab[i-040]); } }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -