为什么使用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,编译即可通过!

最新文章

  1. [BTS] SQL Adapter. New transaction cannot enlist in the specified transaction coordinator
  2. java常见异常类图(分类了Error/RuntimeExecption、check Exception)
  3. Java for LeetCode 154 Find Minimum in Rotated Sorted Array II
  4. js 数组排序和算法排序
  5. 如何管理好项目的DLL
  6. C++中名字隐藏,名字查找优先于类型检查
  7. 初识hibernate
  8. SSO单点登录PHP简单版
  9. 使用gitbook
  10. 【BZOJ1040】骑士(动态规划)
  11. IIS前端页面不显示详细错误解决方法
  12. ERP各个模块的缩写
  13. codeforces510D
  14. BZOJ4698 差分 + 二分 + SA
  15. Java 避免创建不必要的对象
  16. Windows 操作系统与内核版本号
  17. JQuery 选择器 筛选器
  18. 现象级AR营销助力“口碑双十二”,蚂蚁特工在全国数万商户掀起“AR捉四宝”
  19. Django——REST framework
  20. 在LoadRunner中进行Base64的编码和解码

热门文章

  1. 应该是实例化对象的没有对属性赋值时,自动赋值为null,但不是空指针对象引用
  2. Memorial for Nanjing victims today 南京大屠杀死难者公祭仪式今于南京举行 勿忘国耻,活捉小*日*本。
  3. c++ 修改stl set中的元素
  4. Unity 头发随动效果
  5. Unity 5 官方打包管理工具 Asset Bundle Manager
  6. Operating System-进程/线程内部通信-信号量、PV操作的实现和应用(解决哲学家进餐和生产者消费者问题)
  7. 命令行启动MySQL
  8. BZOJ3289:Mato的文件管理
  9. Java实现Bag类
  10. VMware tools的使用