实现这个功能需要imageHelper.h imageHelper.cpp这两个源代码文件
imageHelper.h
#ifndef _IMAGE_HELPER_H_
#define _IMAGE_HELPER_H_
/*
Title: Image Helper
Author: kagula
Date: 2018-10-3
Function Description:
用来判断内存中的数据是不是合法的ipng或jpg文件!
Test Environment:
[1]Win10 Pro with visual studio 2017 community
[2]CentOS7 with gcc 5.x
Dependencies:
[1]libjpeg9c
[2]libpng-libpng16
[3]zlib 1.2.8
How to use:
使用前先把jpg/png文件的内容读到DataBlock实例中,
然后,就可以使用IsValidJPG和IsValidPNG来判断文件格式是否正确了。
*/
namespace kagula
{
struct DataBlock;
bool IsValidJPG(DataBlock &db);
bool IsValidPNG(DataBlock &db);
}
#endif // _DEBUG
imageHelper.cpp
#include "imageHelper.h"
#include "fileHelper.h"
#include <png.h>
#include <zlib.h>
#ifdef _WIN32
#pragma comment(lib,"libjpeg9c.lib")
#ifdef _DEBUG
#pragma comment(lib,"libpng16d.lib")
#pra