怎样把PCX图形转换成BASIC图形 张正新 1997-01-01   在BASIC程序中,可利用UCDOS的特显功能显示广为流行的PCX图形,那么怎样在非汉字系统下或不用UCDOS的特显功能来显示PCX图形呢?下面介绍一种在QBASIC或TURBO BASIC语言中,把PCX图形转换成BASIC图形的方法。该方法的步骤为:   1.先启动UCDOS及其特显功能,然后在QBASIC或TURBO BASIC的显示模式9下,显示一个PCX图形。   2.利用读取指定点色值的函数POINT,读取屏幕上的色值并把色值存入一个数组中(此时你得耐心等待)。   3.改变显示模式为1,因为只有在模式1下保存的BASIC图形在重新显示时最好。但模式1的分辨率太低,需人为改为高分辨率,对此可用设置当前视窗相对坐标的语句WINDOW将视窗坐标设置为640列、340行,为的是与显示PCX图形时的列数、行数一致。   4.用画点语句PSET将色值数组中的颜色画到屏幕上,并用BSAVE命令将屏幕上的图形存为某一个图形文件——这个图形已经是一个BASIC格式的图形了。   此后我们就可在任何系统下,在BASIC显示模式1下,用BLOAD命令随时显示那个BASIC格式的图形了。   下面程序1可将一个名为AAA.PCX的PCX图形转换为一个名为BBB.BAS的BASIC图形文件。   程序2可将BBB.BAS图形重新显示。 #3  程序1   SCREEN 9:i=0   PRINT CHR$(14);”[RE0,0,AAA.PCX$]”   DIM C(25000)   ′此数组大小为640  340   FOR x=0 to 639   FOR y=0 to 339   a=POINT (x,y)   C(i)=a   i=i+1   NEXT y:NEXT x   SCREEN 1:i=0   WINDOW SCREEN(640,340)-(0,0)   FOR x=0 to 639   FOR y=0 to 339   PSET (x,y),C(i)   i=i+1   NEXT y:NEXT x   DEF SEG=&HB800   BSAVE ”BBB.BAS”,0,400   END #3  程序2   SCREEN 1   DEF SEG=&HB800   WINDOW SCREEN(640,340)-(0,0)   BLOAD ”BBB.BAS”,0   END