论坛: 编程破解 标题: 用c语言编点阵字模工具示例(不是我写的,让大家欣赏一下) 复制本贴地址    
作者: lwei889 [lwei889]    论坛用户   登录
/*************** 点阵字模工具编程辅助效果示例 ***************/
#include "Conio.h"
#include "graphics.h"
#define closegr closegraph

void initgr(void) /* BGI初始化 */
{int gd=DETECT,gm=0; /* 和gd=VGA,gm=VGAHI是同样效果 */
registerbgidriver(EGAVGA_driver);/* 注册BGI驱动后可以不需要.BGI文件的支持运行 */
initgraph(&gd,&gm,"");
}

void drawmat(char *mat,int matsize,int x,int y,int color)
/*依次:字模指针、点阵大小、起始坐标(x,y)、颜色*/
{int i,j,k,n;
n=(matsize-1)/8+1;
for(j=0;j<matsize;j++)
  for(i=0;i<n;i++)
  for(k=0;k<8;k++)
    if(mat[j*n+i]&(0x80>>k))  /*测试为1的位则显示*/
    putpixel(x+i*8+k,y+j,color);
}

char yi12[]={
/* 以下是 '1' 的 12点阵宋体 字模,24 byte */
0x00,0x00,0x0C,0x00,0x1C,0x00,0x3C,0x00,
0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,
0x0C,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,
};

char er12[]={
/* 以下是 '2' 的 12点阵宋体 字模,24 byte */
0x00,0x00,0x3E,0x00,0x63,0x00,0x03,0x00,
0x06,0x00,0x0C,0x00,0x18,0x00,0x30,0x00,
0x63,0x00,0x7F,0x00,0x00,0x00,0x00,0x00,
};

char dian12[]={
/* 以下是 '点' 的 12点阵宋体 字模,24 byte */
0x04,0x00,0x07,0xC0,0x04,0x00,0x04,0x00,
0x3F,0x80,0x20,0x80,0x20,0x80,0x3F,0x80,
0x00,0x00,0x49,0x40,0xC9,0x20,0x00,0x00,
};

char zhen12[]={
/* 以下是 '阵' 的 12点阵宋体 字模,24 byte */
0xF2,0x00,0x9F,0xE0,0x92,0x00,0xA5,0x00,
0xA5,0x00,0x97,0xE0,0x91,0x00,0xB1,0x00,
0x8F,0xE0,0x81,0x00,0x81,0x00,0x00,0x00,
};

char song16[]={
/* 以下是 '宋' 的 16点阵宋体 字模,32 byte */
0x02,0x00,0x01,0x00,0x7F,0xFE,0x41,0x04,
0x81,0x08,0x01,0x00,0x7F,0xFC,0x03,0x80,
0x05,0x80,0x05,0x40,0x09,0x20,0x11,0x10,
0x21,0x0E,0x41,0x04,0x01,0x00,0x00,0x00,
};

char ti16[]={
/* 以下是 '体' 的 16点阵宋体 字模,32 byte */
0x10,0x40,0x18,0x40,0x10,0x40,0x20,0x40,
0x37,0xFC,0x60,0xC0,0xA0,0xE0,0x21,0x60,
0x21,0x50,0x22,0x48,0x24,0x4E,0x2B,0xF4,
0x20,0x40,0x20,0x40,0x20,0x40,0x00,0x00,
};

char zi24[]={
/* 以下是 '字' 的 24点阵隶书 字模,72 byte */
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x18,0x00,0x08,0x1C,0x10,
0x1F,0xFF,0xF0,0x18,0x00,0x30,0x18,0xFF,
0x10,0x09,0xC3,0x90,0x00,0x3C,0x00,0x00,
0x1C,0x00,0x3F,0xFF,0xFE,0x7E,0x0C,0xFE,
0x00,0x1C,0x04,0x00,0x1C,0x00,0x04,0x3C,
0x00,0x03,0xF8,0x00,0x00,0xE0,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
};

char mo24[]={
/* 以下是 '模' 的 24点阵楷体_GB2312 字模,72 byte */
0x00,0x00,0x00,0x00,0x00,0x60,0x02,0x00,
0x30,0x03,0x0C,0x20,0x03,0x04,0x3C,0x02,
0x07,0xE0,0x02,0x1C,0x40,0x02,0x00,0x40,
0x03,0xC0,0x70,0x7E,0x1F,0x98,0x02,0x08,
0x10,0x06,0x0F,0x90,0x07,0x88,0x10,0x0A,
0xCB,0xE0,0x1A,0x05,0x00,0x12,0x01,0x1E,
0x22,0x0F,0xFE,0x42,0x32,0x80,0x02,0x02,
0x40,0x02,0x04,0x60,0x02,0x0C,0x30,0x02,
0x18,0x1C,0x02,0x20,0x0F,0x02,0x00,0x00,
};

char guan48[]={
/* 以下是 '灌' 的 48点阵黑体 字模,288 byte */
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x03,0xC0,0x38,0x00,
0x03,0x00,0x03,0xC0,0x38,0x00,0x07,0x80,
0x03,0xC0,0x38,0x00,0x07,0xC0,0x03,0xC0,
0x38,0x00,0x03,0xF1,0xFF,0xFF,0xFF,0xFC,
0x01,0xF9,0xFF,0xFF,0xFF,0xFC,0x00,0x79,
0xF1,0xC0,0x39,0xFC,0x00,0x30,0x01,0xC0,
0x38,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0xFF,0xF0,0xFF,0xE0,0x00,0x00,0xFF,0xF0,
0xFF,0xE0,0x00,0x00,0xE0,0x70,0xE0,0xE0,
0x0E,0x00,0xE0,0x70,0xE0,0xE0,0x1F,0x80,
0xE0,0x70,0xE0,0xE0,0x1F,0xE0,0xFF,0xF0,
0xFF,0xE0,0x07,0xF0,0xFF,0xF0,0xFF,0xE0,
0x01,0xF0,0xFF,0xF1,0xFF,0xE0,0x00,0x60,
0x08,0x07,0x00,0x00,0x00,0x20,0x1E,0x03,
0x80,0x00,0x00,0x00,0x1E,0x03,0x00,0x00,
0x00,0x00,0x1F,0xFF,0xFF,0xF0,0x00,0x00,
0x3F,0xFF,0xFF,0xF0,0x00,0x00,0x3F,0xFF,
0xFF,0xF0,0x00,0x00,0x7C,0x03,0x80,0x00,
0x00,0x20,0x7C,0x03,0x80,0x00,0x00,0x70,
0xFC,0x03,0x80,0x00,0x00,0x71,0xFF,0xFF,
0xFF,0xE0,0x00,0x73,0xFF,0xFF,0xFF,0xE0,
0x00,0xF3,0xBC,0x03,0x80,0x60,0x00,0xE3,
0xBC,0x03,0x80,0x00,0x01,0xE1,0x3C,0x03,
0x80,0x00,0x01,0xC0,0x3F,0xFF,0xFF,0xE0,
0x01,0xC0,0x3F,0xFF,0xFF,0xE0,0x03,0xC0,
0x3F,0xFF,0xFF,0xE0,0x03,0x80,0x3C,0x03,
0x80,0x00,0x07,0x80,0x3C,0x03,0x80,0x00,
0x0F,0x80,0x3C,0x03,0x80,0x00,0x0F,0x00,
0x3F,0xFF,0xFF,0xF8,0x1F,0x00,0x3F,0xFF,
0xFF,0xF8,0x1F,0x00,0x3C,0x00,0x00,0x00,
0x06,0x00,0x3C,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
};

char guan64[]={
/* 以下是 '灌' 的 64点阵方正黄草简体 字模,512 byte */
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,
0x00,0x00,0x00,0x00,0x01,0xFF,0xC0,0x00,
0x00,0x00,0x00,0x00,0x03,0xCF,0xC0,0x00,
0x00,0x00,0x00,0x00,0x1E,0x07,0xC0,0x00,
0x00,0x00,0x00,0x03,0xF8,0x07,0x80,0x00,
0x00,0x04,0x00,0x03,0xF8,0x0F,0x00,0x00,
0x00,0x06,0x00,0x03,0xF0,0x18,0x00,0x00,
0x00,0x07,0x00,0x01,0xF0,0x30,0x00,0x00,
0x00,0x07,0x80,0x01,0xF0,0x00,0x00,0x00,
0x00,0x03,0xC0,0x01,0xF0,0x00,0x00,0x00,
0x00,0x03,0xE0,0x00,0x00,0x06,0x00,0x00,
0x00,0x03,0xF0,0x00,0x00,0x0F,0xE0,0x00,
0x00,0x07,0xF0,0x00,0x00,0x3F,0xC0,0x00,
0x00,0x07,0xE0,0x00,0x01,0xFF,0x00,0x00,
0x00,0x0F,0x00,0x00,0x0F,0xF8,0x00,0x00,
0x00,0x0C,0x00,0x00,0x7F,0xC0,0x00,0x00,
0x00,0x08,0x00,0x03,0xFF,0x00,0x00,0x00,
0x00,0x08,0x00,0x0F,0xF0,0x07,0xC0,0x00,
0x00,0x00,0x00,0x3F,0x40,0x0F,0xC0,0x00,
0x00,0x00,0x00,0x18,0x80,0x3F,0x80,0x00,
0x00,0x00,0x00,0x01,0x00,0x7F,0x00,0x00,
0x00,0x00,0x00,0x03,0x0F,0xFC,0x00,0x00,
0x00,0x00,0x00,0x06,0x1F,0xF8,0x00,0x00,
0x00,0x00,0x00,0x0E,0x23,0xF0,0x00,0x00,
0x00,0x00,0x00,0x0E,0xC3,0xE0,0x00,0x00,
0x00,0x80,0x00,0x1F,0x87,0xC0,0x00,0x00,
0x00,0xC0,0x00,0x1F,0x8F,0x87,0x80,0x00,
0x00,0x70,0x02,0x0F,0x9F,0x0F,0x80,0x00,
0x00,0x7C,0x02,0x0F,0xBE,0x1C,0xE0,0x00,
0x00,0x3E,0x04,0x07,0xFC,0x18,0xE0,0x00,
0x00,0x3E,0x04,0x03,0xF0,0x1B,0xC0,0x00,
0x00,0x3E,0x0C,0x01,0xE0,0x1F,0x80,0x00,
0x00,0x1C,0x08,0x03,0xC0,0x1F,0x00,0x00,
0x00,0x18,0x18,0x07,0x80,0x7C,0x00,0x00,
0x00,0x18,0x38,0x0F,0x01,0xFC,0x00,0x00,
0x00,0x18,0x30,0x1F,0x07,0xDC,0x00,0x00,
0x00,0x30,0x70,0x3F,0x1F,0x0C,0x00,0x00,
0x00,0x30,0x70,0x7B,0x38,0x0C,0x00,0x00,
0x00,0x30,0xE0,0xF3,0x60,0x0C,0x00,0x00,
0x00,0x30,0xE1,0xE3,0x00,0x0E,0x00,0x00,
0x00,0x71,0xC3,0xE3,0x00,0x3E,0x00,0x00,
0x00,0x71,0xC3,0xC3,0x00,0x6E,0x00,0x00,
0x00,0x73,0x83,0xC3,0x00,0xCE,0x00,0x00,
0x00,0x77,0x80,0x07,0x00,0x9E,0x00,0x00,
0x00,0x77,0x80,0x07,0x00,0x9C,0x00,0x00,
0x00,0x7F,0x00,0x07,0x00,0x9C,0x00,0x00,
0x00,0x7F,0x00,0x07,0x00,0xBC,0x00,0x00,
0x00,0x7E,0x00,0x07,0x00,0xFC,0x00,0x00,
0x00,0x7E,0x00,0x07,0x00,0xFC,0x00,0x00,
0x00,0x7C,0x00,0x07,0x00,0xFF,0x00,0x00,
0x00,0x7C,0x00,0x06,0x00,0xDE,0x00,0x00,
0x00,0xFC,0x00,0x06,0x00,0x5C,0x00,0x00,
0x01,0xF8,0x00,0x06,0x00,0x78,0x00,0x00,
0x00,0xF8,0x00,0x0E,0x00,0x78,0xF8,0x00,
0x00,0xF8,0x00,0x0E,0x00,0xFF,0xF8,0x00,
0x00,0x78,0x00,0x0E,0x01,0xFF,0xB0,0x00,
0x00,0x70,0x00,0x06,0x01,0xF0,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
};

char matarray16k[]={
/* 以下是 '该' 的 16点阵楷体_GB2312 字模,32 byte */
0x00,0x00,0x00,0x00,0x08,0x60,0x08,0x00,
0x00,0x0C,0x03,0xF0,0x18,0x50,0x30,0x90,
0x11,0x70,0x11,0xA8,0x14,0x58,0x18,0xB0,
0x13,0x70,0x04,0x8C,0x03,0x04,0x00,0x00,
/* 以下是 '程' 的 16点阵楷体_GB2312 字模,32 byte */
0x00,0x00,0x00,0x00,0x02,0x00,0x0C,0xFC,
0x3C,0x88,0x08,0x88,0x0E,0x70,0xF8,0x18,
0x18,0xE0,0x1E,0x20,0x28,0xF0,0xC8,0x20,
0x08,0x3E,0x09,0xC0,0x08,0x00,0x00,0x00,
/* 以下是 '序' 的 16点阵楷体_GB2312 字模,32 byte */
0x00,0x00,0x00,0x80,0x00,0x90,0x0B,0xE0,
0x0C,0x00,0x0B,0xF0,0x08,0x40,0x10,0x80,
0x11,0xFC,0x1E,0x88,0x20,0x80,0x20,0x80,
0x40,0x80,0x80,0x80,0x01,0x80,0x00,0x80,
/* 以下是 '已' 的 16点阵楷体_GB2312 字模,32 byte */
0x00,0x00,0x00,0x00,0x00,0xC0,0x0F,0x40,
0x00,0xC0,0x10,0x80,0x10,0x80,0x1F,0x00,
0x10,0x00,0x10,0x00,0x10,0x04,0x10,0x04,
0x08,0x06,0x07,0xF8,0x00,0x00,0x00,0x00,
/* 以下是 '集' 的 16点阵楷体_GB2312 字模,32 byte */
0x00,0x00,0x02,0x80,0x04,0x10,0x07,0xE0,
0x0C,0xE0,0x17,0x80,0x05,0xC0,0x06,0xB0,
0x0B,0x40,0x08,0x9C,0x1F,0xE0,0x23,0x40,
0x05,0x30,0x09,0x1C,0x31,0x00,0x00,0x00,
/* 以下是 '成' 的 16点阵楷体_GB2312 字模,32 byte */
0x00,0x00,0x03,0x00,0x01,0x30,0x01,0x10,
0x01,0x00,0x01,0xC0,0x1E,0x80,0x10,0x90,
0x12,0x90,0x1E,0x60,0x12,0x60,0x22,0x60,
0x26,0x92,0x45,0x0A,0x00,0x06,0x00,0x00,
/* 以下是 '小' 的 16点阵楷体_GB2312 字模,32 byte */
0x00,0x00,0x00,0x00,0x01,0x00,0x01,0x00,
0x01,0x00,0x01,0x00,0x01,0x00,0x11,0x18,
0x11,0x0C,0x21,0x04,0x21,0x00,0x01,0x00,
0x07,0x00,0x03,0x00,0x00,0x00,0x00,0x00,
/* 以下是 '型' 的 16点阵楷体_GB2312 字模,32 byte */
0x00,0x00,0x00,0x08,0x03,0x08,0x1E,0x28,
0x0A,0x48,0x0F,0xC8,0x7A,0x48,0x0A,0x08,
0x12,0x18,0x21,0x08,0x01,0x40,0x07,0x80,
0x01,0x00,0x01,0xF8,0x3E,0x00,0x00,0x00,
/* 以下是 '汉' 的 16点阵楷体_GB2312 字模,32 byte */
0x00,0x00,0x00,0x00,0x30,0x00,0x11,0xF0,
0x02,0x20,0x04,0x20,0x62,0x40,0x29,0x40,
0x10,0x80,0x11,0x40,0x22,0x60,0x64,0x38,
0x78,0x1E,0x00,0x00,0x00,0x00,0x00,0x00,
/* 以下是 '字' 的 16点阵楷体_GB2312 字模,32 byte */
0x00,0x00,0x01,0x00,0x01,0x10,0x11,0xF8,
0x1E,0x10,0x20,0xC0,0x07,0xC0,0x00,0x80,
0x01,0x38,0x1F,0xC0,0x20,0x80,0x00,0x80,
0x00,0x80,0x00,0x80,0x01,0x80,0x00,0x00,
/* 以下是 '库' 的 16点阵楷体_GB2312 字模,32 byte */
0x00,0x00,0x00,0x80,0x00,0x80,0x01,0xF0,
0x0E,0x80,0x08,0xF0,0x0B,0x00,0x09,0x40,
0x0A,0x78,0x13,0xC0,0x10,0x7E,0x2F,0xC0,
0x20,0x40,0x40,0x40,0x00,0x40,0x00,0x40,
/* 以下是 ',' 的 16点阵楷体_GB2312 字模,32 byte */
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x00,
0x10,0x00,0x10,0x00,0x20,0x00,0x00,0x00,
/* 以下是 '可' 的 16点阵楷体_GB2312 字模,32 byte */
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFE,
0x7F,0x40,0x00,0x20,0x07,0x20,0x19,0x20,
0x12,0x20,0x0E,0x40,0x00,0x40,0x00,0x40,
0x00,0x40,0x00,0xC0,0x00,0x40,0x00,0x00,
/* 以下是 '脱' 的 16点阵楷体_GB2312 字模,32 byte */
0x00,0x00,0x00,0x00,0x00,0x08,0x3D,0x90,
0x24,0x80,0x24,0x70,0x25,0x90,0x25,0x20,
0x35,0xE0,0x24,0xA0,0x24,0xC0,0x45,0x42,
0x4E,0x22,0x88,0x3E,0x00,0x00,0x00,0x00,
/* 以下是 '离' 的 16点阵楷体_GB2312 字模,32 byte */
0x00,0x00,0x03,0x00,0x01,0x30,0x1F,0xC0,
0x00,0xA0,0x0F,0xA0,0x0A,0xA0,0x0F,0xE0,
0x09,0x00,0x03,0xF8,0x1E,0x88,0x17,0xC8,
0x14,0x88,0x10,0x70,0x10,0x10,0x00,0x00,
/* 以下是 '文' 的 16点阵楷体_GB2312 字模,32 byte */
0x00,0x00,0x02,0x00,0x01,0x80,0x00,0x00,
0x00,0x70,0x07,0x80,0x18,0x80,0x01,0x80,
0x05,0x00,0x03,0x00,0x03,0x00,0x04,0xC0,
0x38,0x70,0x00,0x3E,0x00,0x00,0x00,0x00,
/* 以下是 '件' 的 16点阵楷体_GB2312 字模,32 byte */
0x00,0x00,0x08,0x40,0x0C,0x40,0x08,0x40,
0x11,0x40,0x11,0xF0,0x32,0x40,0x50,0x44,
0x91,0xF8,0x12,0x40,0x10,0x40,0x10,0x40,
0x10,0x40,0x10,0x40,0x00,0x00,0x00,0x00,
/* 以下是 '的' 的 16点阵楷体_GB2312 字模,32 byte */
0x00,0x00,0x00,0x00,0x00,0x20,0x0C,0x20,
0x08,0x40,0x10,0x48,0x1E,0xFC,0x23,0x0C,
0x24,0x8C,0x3C,0x48,0x24,0x08,0x24,0x08,
0x3C,0x08,0x00,0x38,0x00,0x18,0x00,0x00,
/* 以下是 '支' 的 16点阵楷体_GB2312 字模,32 byte */
0x00,0x00,0x01,0x00,0x01,0x00,0x01,0x00,
0x01,0xE0,0x0F,0x00,0x01,0x00,0x01,0xC0,
0x0E,0x40,0x08,0x80,0x06,0x80,0x01,0x00,
0x02,0xC0,0x0C,0x78,0x30,0x1C,0x00,0x00,
/* 以下是 '持' 的 16点阵楷体_GB2312 字模,32 byte */
0x00,0x00,0x08,0x20,0x08,0x20,0x08,0x20,
0x08,0x70,0x3C,0x20,0x08,0x3E,0x0F,0xD0,
0x08,0x1C,0x3B,0xF0,0xC9,0x10,0x08,0x90,
0x08,0x10,0x18,0x10,0x00,0x30,0x00,0x00,
/* 以下是 '运' 的 16点阵楷体_GB2312 字模,32 byte */
0x00,0x00,0x00,0x00,0x00,0x60,0x11,0x80,
0x00,0x00,0x00,0x78,0x27,0x80,0x71,0x80,
0x21,0x20,0x22,0xF0,0x23,0x10,0x20,0x00,
0x5F,0x80,0x00,0xFC,0x00,0x00,0x00,0x00,
/* 以下是 '行' 的 16点阵楷体_GB2312 字模,32 byte */
0x00,0x00,0x00,0x00,0x06,0x00,0x0C,0x38,
0x10,0x40,0x24,0x00,0x04,0x1F,0x0B,0xF0,
0x18,0x10,0x28,0x10,0xC8,0x10,0x08,0x10,
0x08,0x10,0x08,0x70,0x00,0x20,0x00,0x00,
};


main()
{int i,j;
initgr(); /* BGI初始化 */

drawmat(yi12,12,100,125,WHITE);
drawmat(er12,12,115,125,WHITE);
drawmat(dian12,12,130,125,WHITE);
drawmat(zhen12,12,145,125,WHITE);
drawmat(song16,16,160,123,YELLOW);
drawmat(ti16,16,180,123,YELLOW);
drawmat(zi24,24,200,119,CYAN);
drawmat(mo24,24,230,117,GREEN);
drawmat(guan48,48,350,110,RED);
drawmat(guan64,64,410,100,YELLOW);

for(i=0;i<15;i++)
  drawmat(matarray16k+i*32,16,200+i*15,200,WHITE);
drawmat(matarray16k+8*32,16,200+i*15,200,WHITE);
drawmat(matarray16k+9*32,16,200+(++i)*15,200,WHITE);
drawmat(matarray16k+10*32,16,200+(++i)*15,200,WHITE);
for(i=18;i<25;i++)
  drawmat(matarray16k+(i-3)*32,16,200+i*15,200,WHITE);

getch(); /* 暂停一下,看看前面绘图代码的运行结果 */
closegr(); /* 恢复TEXT屏幕模式 */
}

在中文和英文tc都可以正常运行!


地主 发表时间: 11/08 21:33

回复: aozhi [aozhi]   论坛用户   登录
这么长呀?我顶给你看。。。。。

B1层 发表时间: 11/09 10:15

回复: gdyxiao [gdyxiao]   论坛用户   登录
好好长呀!

B2层 发表时间: 11/10 16:15

回复: autosee [autosee]   论坛用户   登录
这段代码在TC下运行有问题,提示找不到"_egavga_driver".晕。

B3层 发表时间: 11/13 13:21

回复: lwei889 [lwei889]   论坛用户   登录
这可能是图形驱动的问题,不是程序本身的问题,
Turbo C对于用initgraph()函数直接进行的图形初始化程序, 在编译和链接
时并没有将相应的驱动程序(*.BGI)装入到执行程序, 当程序进行到intitgraph()
语句时, 再从该函数中第三个形式参数char *path中所规定的路径中去找相应的
驱动程序。若没有驱动程序, 则在C:\TC中去找, 如C:\TC中仍没有或TC不存在,
将会出现错误:
    BGI Error: Graphics not initialized (use 'initgraph')
    因此, 为了使用方便, 应该建立一个不需要驱动程序就能独立运行的可执行
图形程序,Turbo C中规定用下述步骤(这里以EGA、VGA显示器为例):
    1. 在C:\TC子目录下输入命令:BGIOBJ EGAVGA
    此命令将驱动程序EGAVGA.BGI转换成EGAVGA.OBJ的目标文件。
    2. 在C:\TC子目录下输入命令:TLIB LIB\GRAPHICS.LIB+EGAVGA
    此命令的意思是将EGAVGA.OBJ的目标模块装到GRAPHICS.LIB库文件中。
    3. 在程序中initgraph()函数调用之前加上一句:
      registerbgidriver(EGAVGA_driver):
该函数告诉连接程序在连接时把EGAVGA的驱动程序装入到用户的执行程序中。
    你看一下这个,如果还不行的话,那你请教一下高手,反正这个程序在我的机子上能运行,不是程序本身的问题!

B4层 发表时间: 11/13 19:22

论坛: 编程破解

20CN网络安全小组版权所有
Copyright © 2000-2010 20CN Security Group. All Rights Reserved.
论坛程序编写:NetDemon

粤ICP备05087286号