91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 106KB
    文件類型: .rar
    金幣: 2
    下載: 0 次
    發布日期: 2021-05-09
  • 語言: C/C++
  • 標簽: jpg??jpeg??bmp??RGB??c++??

資源簡介

網上找到的比較常見的jpg轉bmp的C語言代碼(出處不詳),做了小的改動,包成一個函數,可以將一個jpg文件經過解碼,可以得到相應的將RGB數據和尺寸數據。 工程是用vs2013建立的。

資源截圖

代碼片段和文件信息

//?JpgToBmp.cpp?:?定義控制臺應用程序的入口點。
//

#include?“stdafx.h“

/*
int?_tmain(int?argc?_TCHAR*?argv[])
{
return?0;
}
*/
#include
#include?“jpeg.h“
#include?“memory.h“
#include?“math.h“
#include?“stdio.h“
#include?“windows.h“

//macro?definition
#define?WIDTHBYTES(i)????((i+31)/32*4)
#define?PI?3.1415926535
//define?return?value?of?function
#define?FUNC_OK?0
#define?FUNC_MEMORY_ERROR?1
#define?FUNC_FILE_ERROR?2
#define?FUNC_FORMAT_ERROR?3
//////////////////////////////////////////////////
//Jpeg?functions
BOOL?LoadJpegFile(char?*BmpFileName);
void?showerror(int?funcret);
int??InitTag();
void?InitTable();
int??Decode();
int??DecodeMCUBlock();
int??HufBlock(unsigned?char?dchufindex?unsigned?char?achufindex);
int??DecodeElement();
void?IQtIZzMCUComponent(short?flag);
void?IQtIZzBlock(short??*s?int?*?d?short?flag);
void?GetYUV(short?flag);
void?StoreBuffer();
BYTE?ReadByte();
void?Initialize_Fast_IDCT();
void?Fast_IDCT(int?*?block);
void?idctrow(int?*?blk);
void?idctcol(int?*?blk);
//////////////////////////////////////////////////
//global?variable?declaration
BITMAPFILEHEADER???bf;
BITMAPINFOHEADER???bi;
HBITMAP????????????hBitmap?=?NULL;
HGLOBAL????????????hImgData?=?NULL;
DWORD??????????????NumColors;
DWORD??????????????LineBytes;
DWORD??????????????ImgWidth?=?0?ImgHeight?=?0;
unsigned?int???????PcxBytesPerLine;
LPSTR??????????????lpPtr;
//////////////////////////////////////////////////
//variables?used?in?jpeg?function
short SampRate_Y_H?SampRate_Y_V;
short SampRate_U_H?SampRate_U_V;
short SampRate_V_H?SampRate_V_V;
short H_YtoU?V_YtoU?H_YtoV?V_YtoV;
short Y_in_MCU?U_in_MCU?V_in_MCU;
unsigned?char???*lpJpegBuf;
unsigned?char???*lp;
short qt_table[3][64];
short comp_num;
BYTE comp_index[3];
BYTE ????YDcIndex?YAcIndex?UVDcIndex?UVAcIndex;
BYTE HufTabIndex;
short ????*YQtTable?*UQtTable?*VQtTable;
BYTE And[9]?=?{?0?1?3?7?0xf?0x1f?0x3f?0x7f?0xff?};
short ????code_pos_table[4][16]?code_len_table[4][16];
unsigned?short code_value_table[4][256];
unsigned?short huf_max_value[4][16]?huf_min_value[4][16];
short BitPos?CurByte;
short rrun?vvalue;
short MCUBuffer[10?*?64];
int QtZzMCUBuffer[10?*?64];
short BlockBuffer[64];
short ycoef?ucoef?vcoef;
BOOL IntervalFlag;
short interval?=?0;
int Y[4?*?64]?U[4?*?64]?V[4?*?64];
DWORD ????sizei?sizej;
short? restart;
static??long iclip[1024];
static??long *iclp;

////////////////////////////////////////////////////////////////
int?LoadJpegFile(char?*JpegFileName)
{
HFILE ???hfjpg;
DWORD? ???????ImgSize;
DWORD??????????????JpegBufSize;
HFILE??????????????hfbmp;
HGLOBAL ???hJpegBuf;
int ???funcret;
LPBITMAPINFOHEADER?lpImgData;

if?((hfjpg?=?_lopen(JpegFileName?OF_READ))?==?HFILE_ERROR)
{
showerror(FUNC_FILE_ERROR);
return?0;
}
//get?jpg?file?length
JpegBufSize?=?_llseek(hfjpg?0L?SEEK_END);
//rewind?to?

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件????????758??1998-04-23?14:04??JpgToBmp\JpgToBmp\JPEG.H

?????文件??????28491??2015-01-20?12:15??JpgToBmp\JpgToBmp\JpgToBmp.cpp

?????文件???????4571??2015-01-20?10:01??JpgToBmp\JpgToBmp\JpgToBmp.vcxproj

?????文件???????1401??2015-01-20?10:01??JpgToBmp\JpgToBmp\JpgToBmp.vcxproj.filters

?????文件???????1517??2015-01-20?09:59??JpgToBmp\JpgToBmp\ReadMe.txt

?????文件????????214??2015-01-20?09:59??JpgToBmp\JpgToBmp\stdafx.cpp

?????文件????????234??2015-01-20?09:59??JpgToBmp\JpgToBmp\stdafx.h

?????文件????????236??2015-01-20?09:59??JpgToBmp\JpgToBmp\targetver.h

?????文件??????94152??2008-10-10?00:26??JpgToBmp\JpgToBmp\test.jpg

?????文件????????970??2015-01-20?09:59??JpgToBmp\JpgToBmp.sln

????..A..H.?????22528??2015-01-20?12:15??JpgToBmp\JpgToBmp.v12.suo

?????目錄??????????0??2015-01-20?12:15??JpgToBmp\JpgToBmp

?????目錄??????????0??2015-01-20?12:15??JpgToBmp

-----------?---------??----------?-----??----

???????????????155072????????????????????13


評論

共有 條評論