资源简介
VC 2015 MFC 图片列表ListCtrl
代码片段和文件信息
/* @(#)uc_image_indep.c
*/
#include “stdafx.h“
#include
#include
#include
#include
#include
#include “uc_image.h“
#undef FAR
#define XMD_H
#ifdef _MSC_VER
#define HAVE_BOOLEAN
#endif
#ifndef INCLUDED_JPEGLIB_H
#ifdef __cplusplus
extern “C“ {
#endif
#include “jpeglib.h“ // www.ijg.org‘s jpeg library
#ifdef __cplusplus
};
#endif
#define INCLUDED_JPEGLIB_H
#endif
METHODDEF(void)
my_output_message (j_common_ptr cinfo)
{
char buffer[JMSG_LENGTH_MAX];
/* Create the message */
(*cinfo->err->format_message) (cinfo buffer);
return ;
}
GLOBAL(struct jpeg_error_mgr *)
jpeg_my_error (struct jpeg_error_mgr * err)
{
jpeg_std_error(err);
err->output_message = my_output_message;
return err;
}
static int file_ext_to_format(const char* file)
{
int i;
char tmp[255]={0};
char* suffix;
char* ext[]=
{
“jpg“
“jpeg“
“bmp“
};
int fmt[]={
UC_JPEG_FORMAT
UC_JPEG_FORMAT
UC_BMP_FORMAT
};
strncpy(tmpfile255);
suffix = strrchr(tmp‘.‘);
if(suffix != NULL)
suffix++;
if(suffix == NULL)
return UC_UNSUP_FORMAT;
// 把后缀转换为小写
i=0;
do{
tmp[i++] = tolower(*suffix++);
}while(*suffix);
tmp[i] = ‘\0‘;
// 从后缀得到文件类型
for(i=0; i {
if(strcmp(tmpext[i]) == 0)
return fmt[i];
}
return UC_UNSUP_FORMAT;
}
struct my_error_mgr
{
struct jpeg_error_mgr pub;
jmp_buf setjmp_buffer;
};
static void my_error_exit(j_common_ptr cinfo)
{
struct my_error_mgr* myerr_p = (struct my_error_mgr*)cinfo->err;
(*cinfo->err->output_message)(cinfo);
longjmp(myerr_p->setjmp_buffer1);
}
static int save_jpeg_file(uc_image_t* imageconst char* file)
{
int quality = image->m_nQuality;
struct jpeg_compress_struct cinfo;
struct my_error_mgr jerr;
FILE * outfile;
JSAMPROW row_pointer[1];
int row_stride;
if(quality>100||quality<0)
quality=80;
cinfo.err = jpeg_my_error(&jerr.pub);
jpeg_create_compress(&cinfo);
if((outfile = fopen(file “wb“)) == NULL)
{
// can not open file
return -1;
}
if(setjmp(jerr.setjmp_buffer))
{
jpeg_destroy_compress(&cinfo);
fclose(outfile);
return -1;
}
jpeg_stdio_dest(&cinfo outfile);
cinfo.image_width = image->m_width;
cinfo.image_height = image->m_height;
cinfo.input_components = 3;
cinfo.in_color_space = JCS_RGB;
jpeg_set_defaults(&cinfo);
jpeg_set_quality(&cinfoqualityTRUE);
jpeg_start_compress(&cinfoTRUE);
row_stride = image->m_width*cinfo.input_components;
while(cinfo.next_scanline < cinfo.image_height)
{
row_pointer[0] =
&image->m_data_p[cinfo.next_scanline*row_stride];
(void)jpeg_write_scanlines(&cinfo row_pointer 1);
}
jpeg_finish_compress(&cinfo);
fclose(outfile);
jpeg_destroy_compress(&cinfo);
return 0;
}
static int load_jpeg_file(uc_image_t* imageconst char* file)
{
stru
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2017-04-06 22:30 vc 2015缩图\
目录 0 2017-04-06 22:30 vc 2015缩图\JPEGLIB\
文件 1073 2002-08-12 09:45 vc 2015缩图\JPEGLIB\BASIC.H
文件 2641 1997-09-18 17:50 vc 2015缩图\JPEGLIB\JCONFIG.H
文件 13812 2004-03-12 14:10 vc 2015缩图\JPEGLIB\JMORECFG.H
文件 39093 2008-08-19 11:32 vc 2015缩图\JPEGLIB\JPEGFILE.CPP
文件 7457 2008-08-19 11:32 vc 2015缩图\JPEGLIB\JPEGFILE.H
文件 51450 2004-03-12 14:10 vc 2015缩图\JPEGLIB\JPEGLIB.H
文件 240054 2001-07-11 15:42 vc 2015缩图\JPEGLIB\JPEGLIB2.LIB
文件 1138 2008-04-17 10:05 vc 2015缩图\JPEGLIB\uc_image.h
文件 6018 2007-12-24 11:15 vc 2015缩图\JPEGLIB\uc_image_indep.cpp
文件 3295 2007-12-24 11:16 vc 2015缩图\JPEGLIB\uc_image_win.cpp
目录 0 2017-04-06 23:12 vc 2015缩图\lib\
文件 2924 2007-12-24 11:08 vc 2015缩图\lib\CtrlModule.cpp
文件 1065 2001-07-21 17:16 vc 2015缩图\lib\CtrlModule.h
文件 5200 2008-08-19 12:56 vc 2015缩图\lib\CzyDetba
文件 1352 2017-04-06 23:12 vc 2015缩图\lib\CzyDetba
文件 2446 2007-12-20 14:04 vc 2015缩图\lib\DataDefine.h
文件 8892 2008-04-16 17:18 vc 2015缩图\lib\DataStructDef.h
文件 1160 2003-09-23 17:29 vc 2015缩图\lib\SYSTEMSETTING.CPP
文件 1929 2007-05-14 18:41 vc 2015缩图\lib\SYSTEMSETTING.H
文件 1234 2003-11-16 22:56 vc 2015缩图\lib\ShareSendData.cpp
文件 577 2003-11-19 15:32 vc 2015缩图\lib\ShareSendData.h
目录 0 2017-04-06 23:23 vc 2015缩图\zoomimage\
目录 0 2017-04-06 23:22 vc 2015缩图\zoomimage\.vs\
目录 0 2017-04-06 23:22 vc 2015缩图\zoomimage\.vs\zoomimage\
目录 0 2017-04-06 23:22 vc 2015缩图\zoomimage\.vs\zoomimage\v14\
文件 20992 2017-04-06 23:22 vc 2015缩图\zoomimage\.vs\zoomimage\v14\.suo
文件 241664 2002-07-11 14:32 vc 2015缩图\zoomimage\CJ60Lib.dll
文件 499793 2002-03-11 19:50 vc 2015缩图\zoomimage\CJ60Libd.dll
文件 243798 2002-03-08 16:53 vc 2015缩图\zoomimage\CJ60Libd.lib
............此处省略24个文件信息
相关资源
- MFC读取txt,分割显示到listctrl控件上
- 解决System.Data.SQLite兼容32位和64位问题
- 测试网速和延迟的MFC 前期代码
- 网速监控 v1.2 MFC VC C++ 网速监控 线程
- 用VC++显示图像的灰度直方图
- VC++开发基于Microsoft Speech SDK的TTS软件
- MFC绘图小程序源代码
- VC分治算法解众数问题
- VC++ MFC入门精讲.PPT
- VC_Psapi.h_头文件
- 质子交换膜燃料电池PEMFC仿真模型
- TCP/IP聊天室群聊MFC版
- 基于TMS320VC5509 DSP的有源噪声控制系统
- 如何用VC实现对超长数据库字段操作
- stdafx.h头文件
- VC++串口操作的代码及文档
- 吕鑫VS2015之C.C++.MFC完整视频
- 三菱PLC上位机编程软件VC6.0完整源代码
- MFC下CSocket编程详解代码
- VC++病毒编程入门
- Windows平台下的图形化的Ping工具基于
- MFC读写CSV文件
- MFC下SQL的新增,删除和修改
- 在mfc中picture控件中显示Mat图片
- 美国Delta Tau公司PMAC多轴运动控制卡的
- MFC socket通信,socket通讯
- MFC Combox自动提示输入
- MFC VS2010 图片控件+滚动条
- 一步一步教你用VC和VB调用C++ DLL 的源
- MFC和CLIPS交互例程
评论
共有 条评论