问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

tc编程能不能在某个坐标处载入图片

发布网友 发布时间:2022-04-27 02:19

我来回答

3个回答

热心网友 时间:2022-06-22 06:09

对于*.img图形文件,TC可以通过将图形文件内容读入内存,通过putimage()函数输出到屏幕,如下形式:
void picout()
{
char filename[10];//图形文件名
char imgc[800];//图形文件大小
FILE *fp;

fp=fopen(filename,"rb");
if (fp!=NULL)
{
fread(imgc,1,800,fp);
fclose(fp);
putimage(x,y,imgc,0);//x,y图形坐标
}
}
对于常见的*.bmp图形文件,可以转化为*.img格式输出,形式如下
//16色320*240的1.bmp文件输出
char img[10020];
int bmp_to_img()
{
int i, j, k, l, q, h,h0,kc;
long lenth, high, handle,number, p, m;
long size,ldata,h2;
unsigned char c[2];
char f[16]={0,4,2,6,1,5,3,8,7,12,10,14,9,13,11,15};
unsigned char ch, a[8], b[4], e[4][8];
FILE *fp;

handle=_open("1.bmp", O_RDONLY);
if(handle==-1) return 0;
size=filelength(handle);
close(handle);

if(size!=38518) return 0;
fp=fopen ("1.bmp", "rb");
fseek (fp, 18, 0);
lenth=getw(fp);
fseek(fp, 22, 0);
high=getw (fp);
if(lenth!=320 || high!=240) return 0;
if((lenth%8)==0) number= (lenth+8)/8*4;
else number=4*(ceil ((double)lenth/8));
p=number/4;
if((lenth%8)!=0) m=p;
else m=p-1;
high=60;kc=4;h2=160;//320/2
size=6+number*(high+1); // 10010

img[0]=lenth & 0x00ff;
img[1]=(lenth& 0xff00)>>8;
img[2]=(high-1) & 0x00ff;
img[3]=((high-1) & 0xff00)>>8;
for(i=4; i<size; i++) img[i]=0;

for(h0=kc-1;h0>=0; h0--)
{
ldata=118l+h2*h0*high;
fseek (fp, ldata,0);
for(l=high-1; l>=0; l--)
{
for(q=0; q<m; q++)
{
for(k=0; k<4; k++)
{
ch=getc(fp);
c[0]=(ch&0xf0)>>4;
c[1]=ch&0x0f;
c[0]=f[c[0]];
c[1]=f[c[1]];
ch=(c[0]<<4)+c[1];
a[0]=ch&0x1;
a[1]=(ch&0x2)>>1;
a[2]=(ch&0x4)>>2;
a[3]=(ch&0x8)>>3;
a[4]=(ch&0x10)>>4;
a[5]=(ch&0x20)>>5;
a[6]=(ch&0x40)>>6;
a[7]=(ch&0x80)>>7;
h=7;
for(i=0; i<2; i++)
for(j=0; j<4; j++)
{e[j][i+2*k]=a[h];h--;}
}

for(i=0; i<4; i++)
{
b[i]=(e[i][0]<<7)+(e[i][1]<<6)+(e[i][2]<<5)+(e[i][3]<<4)+(e[i][4]<<3)+(e[i][5]<<2)+(e[i][6]<<1)+(e[i][7]);
}
for(i=0; i<4; i++)
img[4+number*l+q+i*p]=b[i];
}
}
putimage(0, high*(kc-h0-1), img, 0);
}
fclose (fp);
return 1;
}

或者根据bmp格式定义,直接读取颜色值(注意存储位置与屏幕的对应关系),通过putpixel()函数输出到屏幕。

热心网友 时间:2022-06-22 06:09

可以。
TC的图形模式就能做到。很早在DOS平台上都已经实现了的。

热心网友 时间:2022-06-22 06:10

lz有点抠门啊……留个e-mail给你发源程序,tc是可以在图形模式下进行真彩色贴图的哦
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
AFK半年后回归WOW,但发现好多东西搞不清楚了,求指教,多问题高分_百度知 ... wow85级什么本可以打378的猎人饰品 落花流水(打一动物)谜底及原因 办理买房按揭贷款需要多长时间啊 一手房如何办按揭 一手房按揭贷款申请条件 怎么把微信好友转移到另一个微信号上? 高铁站没有身份证可以进站吗 京东Plus会员每月优惠券去哪领?Plus会员哪里买最便宜? 京东plus会员优惠券在哪里领?怎么用? 高品质TC布与TC有哪些不同之处? tc 如何在指定坐标处 输出bmp图片?? hp tc4400平板,最近用电磁笔点击到屏幕最下方两厘米处时鼠标指示就消失了,笔在这一区域手写或点击失灵。 tc张圆形纸片直径ab=4现将a折叠式圆形折痕cd在点cd折叠自圆心处最后将图形打 华硕adol外置摄像头插上之后,还是读取不到设备? 移动的国内限定性流量是什么意思? 中国移动流量有上限吗 中国移动流量上限怎么解除 中国移动的限制性流量是什么意思?怎么使用? 中国移动怎样开通成无限流量 怎么用移动限定性流量 江苏移动流量使用有限额嘛 中国移动流量上限是多少 我梦见牙齿很痛,压碎~(貌似是我咬碎的)梦到好几次了~ 昨天我梦见我的牙特别痛,非常真实的感受,这是怎么回事? 经常梦见牙齿痛的摇摇晃晃要掉,是为什么? 解梦:梦到自己门牙特别痛 请问预示什么 谁知道做梦牙齿痛意味着什么吗??是好还是坏!?? 睡觉梦见牙齿痛有什么预兆? 最近什么样的手机好? 在外显子1第129个碱基处(以起始密码子ATG始),存在C-T突变,突变比例为T:N=11:2(N为TC杂合型)。 关于TC下delay()函数的不明白之处; 请问两个岛屿对TC影响的异同处 求助松下TC-29GF90R行幅右偏是何处故障及维修 宏碁 aspire tc 606这个电脑有集显吗 我的怎么只有独显驱动 英伟达控制面板没有图形处 求国际标准化组织ISO的TC,SC,WG在各个国家的秘书处有多少个(2011或者2012的数据) 你好,为什么手机使用无线网很慢 北京到沈阳大巴,可以托运宠物的有吗 手机无线信号太差 自己家里,手机使用无线网络特别卡,(之前还很快)使用运营商的联通电信网速就正常,手机原因还是无线网 在北京用长途汽车托运宠物有什么要求 手机接收wifi的效率太低(信号强度不够)该怎么办? 利用职务之便,为他人谋取利益,收受他人财物,数额较大怎么判刑。 收受他人财物帮人办事违反了中国*党纪律纪律处分条例哪些规定? 只要是收受他人财物就构成受贿罪吗 在私营企业收受他人钱物属于违法犯罪吗,向什么机关举报? 非公职人员收受他人钱财 什么快递可以寄活物,从北京? 非公职人员在不是其管理范围内为他人办事收受他人财务属于受贿吗? 北京去天津的大巴哪里上车?能带宠物么?