📄 export.c
字号:
/*############################################################################# * 文件名:export.c * 功能: 指纹图像输出保存 * modified by PRTsinghua@hotmail.com#############################################################################*/#include <stdio.h>
#include <stdlib.h>
#include <math.h>#include "import.h"
//#include <stdio.h>//#include <magick/api.h>/****************************************************************************** * 功能:将一个指纹图像输出到一个文件,文件的格式由文件的扩展名决定 * 参数:filename 将要保存图像的文件名 * image 将要导出的图像 * 返回:错误代码******************************************************************************/FvsError_t my_FvsImageExport(const FvsImage_t image,int a)
{
FILE *fp;
//Image* magicimage;
unsigned int temd=0;
FvsError_t ret = FvsOK;
FvsByte_t* buffer;
FvsInt_t pitch;
FvsInt_t height;
FvsInt_t width;
FvsInt_t i;
/* 从输入图像中获取 buffer, size 和 pitch */
buffer = ImageGetBuffer(image);
pitch = ImageGetPitch(image);
height = ImageGetHeight(image);
width = ImageGetWidth(image);
//printf("%d\n",height);
if(a==1) fp=fopen("fingerout1.bmp","wb+");
if(a==2) fp=fopen("fingerout2.bmp","wb+");
temd=0x42; fwrite(&temd,1,1,fp);
temd=0x4d; fwrite(&temd,1,1,fp);
temd=0x36; fwrite(&temd,1,1,fp); // size=14+40+256*300+4*256
temd=0x30; fwrite(&temd,1,1,fp);
temd=0x1; fwrite(&temd,1,1,fp);
temd=0; fwrite(&temd,1,1,fp);
temd=0; fwrite(&temd,1,1,fp);
temd=0; fwrite(&temd,1,1,fp);
temd=0; fwrite(&temd,1,1,fp);
temd=0; fwrite(&temd,1,1,fp);
temd=0x36; fwrite(&temd,1,1,fp);
temd=4; fwrite(&temd,1,1,fp);
temd=0; fwrite(&temd,1,1,fp);
temd=0; fwrite(&temd,1,1,fp);
temd=40; fwrite(&temd,1,1,fp);
temd=0; fwrite(&temd,1,1,fp);
temd=0; fwrite(&temd,1,1,fp);
temd=0; fwrite(&temd,1,1,fp);
temd=0x00; fwrite(&temd,1,1,fp); // width=256
temd=0x1; fwrite(&temd,1,1,fp);
temd=0; fwrite(&temd,1,1,fp);
temd=0; fwrite(&temd,1,1,fp);
temd=0x2c; fwrite(&temd,1,1,fp); // height=300
temd=0x1; fwrite(&temd,1,1,fp);
temd=0; fwrite(&temd,1,1,fp);
temd=0; fwrite(&temd,1,1,fp);
temd=1; fwrite(&temd,1,1,fp);
temd=0; fwrite(&temd,1,1,fp);
temd=8; fwrite(&temd,1,1,fp);
temd=0; fwrite(&temd,1,1,fp);
temd=0; fwrite(&temd,1,1,fp);
temd=0; fwrite(&temd,1,1,fp);
temd=0; fwrite(&temd,1,1,fp);
temd=0; fwrite(&temd,1,1,fp);
temd=0x00; fwrite(&temd,1,1,fp); // image size=256*300
temd=0x2c; fwrite(&temd,1,1,fp);
temd=0x1; fwrite(&temd,1,1,fp);
temd=0; fwrite(&temd,1,1,fp);
temd=0xc4; fwrite(&temd,1,1,fp);
temd=0xe; fwrite(&temd,1,1,fp);
temd=0; fwrite(&temd,1,1,fp);
temd=0; fwrite(&temd,1,1,fp);
temd=0xc4; fwrite(&temd,1,1,fp);
temd=0xe; fwrite(&temd,1,1,fp);
temd=0; fwrite(&temd,1,1,fp);
temd=0; fwrite(&temd,1,1,fp);
temd=0; fwrite(&temd,1,1,fp);
temd=0; fwrite(&temd,1,1,fp);
temd=0; fwrite(&temd,1,1,fp);
temd=0; fwrite(&temd,1,1,fp);
temd=0; fwrite(&temd,1,1,fp);
temd=0; fwrite(&temd,1,1,fp);
temd=0; fwrite(&temd,1,1,fp);
temd=0; fwrite(&temd,1,1,fp);
temd=0; fwrite(&temd,1,1,fp);
temd=0; fwrite(&temd,1,1,fp);
temd=0; fwrite(&temd,1,1,fp);
temd=0; fwrite(&temd,1,1,fp);
//temd=0xff; fwrite(&temd,1,1,fp);
//temd=0xff; fwrite(&temd,1,1,fp);
//temd=0xff; fwrite(&temd,1,1,fp);
//temd=0; fwrite(&temd,1,1,fp);
for ( i=1;i<256;i++ )
{
temd=i;
fwrite(&temd,1,1,fp);
fwrite(&temd,1,1,fp);
fwrite(&temd,1,1,fp);
temd=0;
fwrite(&temd,1,1,fp);
}
fwrite(buffer,sizeof(unsigned char),256*300,fp);//write imageout.bmp head
//for(i=0;i<40;i++) printf("%x\n",buffer[i]);
fclose(fp);
return ret;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -