⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mga_pi3.c

📁 linux下显示各种格式图片
💻 C
字号:
/* 	(c) HelDoRe	Pic Softimage unit ...    v0.0.2			    24 bpp			    24 bpp RLE mixed*/			#define VERPI3 " unit v0.0.2"#include <stdio.h>#include "../mga_view.h"void help_pi3(){printf("PIC%s\n   + 24 bpp\n   + 24 bpp rle mixed\n",VERPI3);}int detect_pi3(){    int rle,r1,g1,b1;				tempi=fgetc32b(plik);		if (tempi!=888569939) return 1;		fseek(plik,88,SEEK_SET);		tempi=fgetc32b(plik);		if (tempi!=1413695824) return 1;		image_x=fgetc16(plik);		image_y=fgetc16(plik);		fseek(plik,4,SEEK_CUR);		depth=fgetc16(plik)*8;		fseek(plik,4,SEEK_CUR);		    rle=fgetc(plik);		if (check_image(image_x,image_y,depth)==3) return 3;		printf("SPIC%s\n",VERPI3);		printf("Softimage PIC   : %ix%ix%i",image_x,image_y,depth);		switch(rle) {		case 0: printf("\n");break;		case 1: printf(" RLE\nPure RLE not supported yet!\n");return 2;break;		case 2: printf(" mixed RLE\n");break;		default :break;		}		fseek(plik,8,SEEK_SET);		printf("Comment         : ");		while (tempi!=0) {		    tempi=fgetc(plik);		    printf("%c",tempi);		    }		    printf("\n");		fseek(plik,108,SEEK_SET);		    if (rle==0)     			for (y=0;y<image_y;y++) {		           for (x=0;x<image_x;x++)		            {				tabr[x+y*image_x]=fgetc(plik);				tabg[x+y*image_x]=fgetc(plik);				tabb[x+y*image_x]=fgetc(plik);			   }			  }		    if (rle==2)     			for (y=0;y<image_y;y++) {		           for (x=0;x<image_x;x++)		            {				if ((tempi=fgetc(plik))==-1) return 0;				if (tempi>=128) {				r1=fgetc(plik);				g1=fgetc(plik);				b1=fgetc(plik);				for (depth=0;depth<tempi-127;depth++) {				    tabr[y*image_x+x]=r1;				    tabg[y*image_x+x]=g1;				    tabb[y*image_x+x++]=b1;				}				} 								if ((tempi!=0) && (tempi<128)) {				for (depth=0;depth<tempi+1;depth++) {				tabr[y*image_x+x]=fgetc(plik);				tabg[y*image_x+x]=fgetc(plik);				tabb[y*image_x+x++]=fgetc(plik);				}				}				if (tempi==0) {				tabr[y*image_x+x]=fgetc(plik);				tabg[y*image_x+x]=fgetc(plik);				tabb[y*image_x+x++]=fgetc(plik);				}												x--;								}			   }			      return 0;	}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -