1 //bmp2jpg.cpp : 定义控制台应用程序的入口点。2 //3 #include "stdafx.h"
4 #include "jpeglib.h"
5 #include "stdlib.h"
6 #pragma comment(lib,"libjpeg.lib")
7 #pragma pack(4) //两字节对齐,否则bmp_fileheader会占16Byte
8
9 /*图像bmp格式文件头结构*/
10 structbmp_fileheader11 {12 unsigned short bfType; //若不对齐,这个会占4Byte
13 unsigned longbfSize;14 unsigned shortbfReverved1;15 unsigned shortbfReverved2;16 unsigned longbfOffBits;17 };18
19 /*图像bmp格式信息头结构*/
20 structbmp_infoheader21 {22 unsigned longbiSize;23 unsigned longbiWidth;24 unsigned longbiHeight;25 unsigned shortbiPlanes;26 unsigned shortbiBitCount;27 unsigned longbiCompression;28 unsigned longbiSizeImage;29 unsigned longbiXPelsPerMeter;30 unsigned longbiYpelsPerMeter;31 unsigned longbiClrUsed;32 unsigned longbiClrImportant;33 };34
35 FILE *input_file ; //输入bmp文件指针
36 FILE *output_file