资源描述:
《在windows中显示多幅彩色图像的技术 .》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、在Windows中显示多幅彩色图像的技术.;摘要该文论述了在em-fixed,sizeof(logpalette)+256*sizeof(paletteentry));pal->palversion=0x300;/*pal->palnumentries=256;memcpy(%pal->palpalentry[0],palette[0],256*sizeof(paletteentry);3.实现该调色板hdc=getdc(hp格式的图像从256色压缩成(color2-color1+1)色,并把颜色号限制在color1到color2范围内。程序执行格式为:cpcolo
2、r图像文件名颜色下限颜色上限本程序使用最优化方法,使用效果良好。/*源程序cpcolor.c*/#include<stdio.h>#include<math.h>#include<alloc.h>unsignedcharpalette[256][4];longtab[256];unsignedchartt[256],bb[256];intap-file(char*fname){unsignedcharch;inti,j,n;file*fp;fp=fopen(fname,rb+);if(fp==null)returnnull;fseek(fp,18l
3、,seek-set);fread(p;depth,2,1,fp);fseek(fp,2l,seek-cur);n=p;palette[0][0],4,256,fp);returnfp;}/*该函数实现颜色的压缩*/voidzh_fan-tu(file*fp,intcolor1,intcolor2){unsignedchar*p,*q,cc,ch;longlen;intmax-no,i,j,m,n,r0,b0,g0,r1,b1,g1;doubledd,dmin;chars[4];max-no=color2-color1+1;for(i=0;i<256;i++)tab[i]=0;p
4、=(char*)malloc(bytes+1);for(i=0;i<depth;i++){fread(p,bytes,1,fp);q=p;for(j=0;j<bytes;j++,q++)if(j>=width)break;else{ch=(unsignedchar)*q;tab[ch]++;}}for(i=0;i<256;i++)tt[i]=(unsignedchar)i;for(i=0;i<>本文共3页:第1[2][3]页;for(j=i+1;j<256;j++)if(tab[i]<tab[j]){len=tab[i];tab[i]=tab[
5、摘要该文论述了在em-fixed,sizeof(logpalette)+256*sizeof(paletteentry));pal->palversion=0x300;/*pal->palnumentries=256;memcpy(%pal->palpalentry[0],palette[0],256*sizeof(paletteentry);3.实现该调色板hdc=getdc(hp格式的图像从256色压缩成(color2-color1+1)色,并把颜色号限制在color1到color2范围内。程序执行格式为:cpcolor图像文件名颜色下限颜色上限本程序使用最优化
6、方法,使用效果良好。/*源程序cpcolor.c*/#include<stdio.h>#include<math.h>#include<alloc.h>unsignedcharpalette[256][4];longtab[256];unsignedchartt[256],bb[256];intap-file(char*fname){unsignedcharch;inti,j,n;file*fp;fp=fopen(fname,rb+);if(fp==null)returnnull;fseek(fp,18l,seek-set);fread(p;dep
7、th,2,1,fp);fseek(fp,2l,seek-cur);n=p;palette[0][0],4,256,fp);returnfp;}/*该函数实现颜色的压缩*/voidzh_fan-tu(file*fp,intcolor1,intcolor2){unsignedchar*p,*q,cc,ch;longlen;intmax-no,i,j,m,n,r0,b0,g0,r1,b1,g1;doubledd,dmin;chars[4];max-no=colo