cximage使用

为什么使用CxImage 

u 使用简单:下面的入门教程会给你展示这一点。 

构造函数

 

初始化

多帧图像操作

区域选择操作

Alpha通道操作

Layers 图像层操作

Attributes 图像属性操作

Miscellaneous 杂项

 

CxImage使用入门

1. 去这里:http://www.codeproject.com/KB/graphics/cximage.aspx,下载CxImage的源代码。在 codeproject没有账户的兄弟姐妹需要先注册一个哦,非常简单,几秒钟就可以了!该页面上有两个可以下载的东东,一个是CxImage的源代码,另一个是用CxImage类库开发的一个完整的Demo,你可以看一下这个Demo,就知道它的功能有多强大了!

 

2. 编译CxImage。解压源码包,在解压后的目录下有一个CxImageLib.dsw工作空间文件,使用VC++ 6.0 打开该工作空间文件。做以下事情:

,在Category下拉列表中选择Code Generation,将Use rum-time libary中选择MultiThread DLL.在 Category下拉列表中选择 Precompiled Headers中,选择第一项: Not using Precompiled headers.

勾选你要编译的版本库。默认情况下是每个库都有四个版本,分别是Debug、Release、Unicode Debug、Unicode Release.选择你想要编译的版本即可。

#include ”mycximage/header/ximage.h”

 

#pragma comment(lib, ”mycximage/lib/png.lib”)

#pragma comment(lib, ”mycximage/lib/libdcr.lib”)

#pragma comment(lib, ”mycximage/lib/jpeg.lib”)

#pragma comment(lib, ”mycximage/lib/zlib.lib”)

#pragma comment(lib, ”mycximage/lib/tiff.lib”)

#pragma comment(lib, ”mycximage/lib/jasper.lib”)

#pragma comment(lib, ”mycximage/lib/cximage.lib”)

#pragma comment(lib, ”mycximage/lib/mng.lib”)

 

 

CxImage image;

// 图像文件名

所有图像文件(*.*)|*.*|BMP图像文件(*.BMP)|*.BMP|JPG格式图像(*.JPG)|*.JPG||”);

dlg.DoModal();

获取文件名

strFileName = dlg.GetFileName();

判断文件名是否为空

if (strFileName.GetLength() == 0)

return;

加载BMP位图

image.Load( strFileName.GetBuffer( strFileName.GetLength()), CXIMAGE_FORMAT_BMP );

判断图像是否有效

if (image.IsValid())

判断图像颜色数

if (!image.IsGrayScale())

image.IncreaseBpp( 24 );

设置Jpeg图像的质量

image.SetJpegQuality( 80 );

将位图转换成JPEG格式图像

image.Save(”export.jpg”,CXIMAGE_FORMAT_JPG);

 

本文中所述的是在VC++ 6.0中完成。而对于编译好的库,在VS2005中也是可以直接用的。如果上述同样的代码在VS2005中编译不能通过,你需要在工程属性中将字符集设置为Not Set,编译即可通过!

posted on 2015-03-06 16:30  spinsoft  阅读(262)  评论(0编辑  收藏  举报