/*********************************************************************** A short program to translate the KaiTi, HeiTi, FangSong, FanTi 24*24 fonts in cc2tex-1.0 packages to cclib or ccf format, to be used with modified ChTeX or gb2ps. Usage: download the fonts alib.24, blib.24, dlib.24, flib.24 from crl.nmsu.edu, under pub/chinese/fonts. to use with gb2ps: cat alib.24 | c2cc -ccf > ckei24.ccf cat blib.24 | c2cc -ccf > cfang24.ccf cat dlib.24 | c2cc -ccf > chei24.ccf cat flib.24 | c2cc -ccf > cfan24.ccf to use with ChTeX: cat alib.24 | c2cc > cclibk.24 cat blib.24 | c2cc > cclibb.24 cat dlib.24 | c2cc > cclibh.24 cat flib.24 | c2cc > cclibf.24 ***********************************************************************/ #include #include main(argc, argv) int argc; char **argv; { register int i, j, k; unsigned char ch, bits[24][24]; int ccf = 0, code = 0; if (argc > 1) if (strncmp(argv[1], "-ccf", 4) == 0) ccf = 1; for (code = 0; code < 94 * 87; code++) { for (i = 0; i < 72; i++) { ch = (code >= 9 * 94 && code < 15 * 94) ? 0 : fgetc(stdin); /* blank planes inserted */ for (j = 0; j < 8; j++) { bits[i / 3][(i % 3) * 8 + 7 - j] = ch & 0x01; ch >>= 1; } } if (ccf) fprintf(stdout, "%2.2d%2.2d ", code / 94 + 1, (code % 94) + 1); for (i = 0; i < 24; i++) { for (j = 0; j < 3; j++) { ch = 0; for (k = 0; k < 8; k++) { ch <<= 1; ch += bits[j * 8 + k][i]; } if (ccf) fprintf(stdout, "%2.2x", ch); else fputc(ch, stdout); } } if (ccf) fprintf(stdout, "\n"); } }