CImg、libjpeg--介绍、配置(操作JPEG)
关于处理图片,之前写了两篇博客关于ImageMagick的:
《ImageMagick–介绍》
《ImageMagick–VS2015环境配置、开发(registrykeylookupFailed)》
可是。在没有安装ImageMagick的机器上。会报错。我们须要改动源文件。改变code path。
这有点尴尬。成本有点高,所以今天就再介绍介绍CImg,来搞一搞。
仅仅须要一个head就能够搞定了。
CImg介绍:
The CImg Library is a small, open-source, and modern C++ toolkit for image processing。
网址:
http://cimg.eu/download.shtml
下载后解压:
图1
接下来就是新建project了。然后包括头文件就能够了。
接下来介绍一下 怎样操作JPEG文件。
libjpeg介绍
libjpeg库是专门用于jpeg图片格式解压和压缩的库
网址:
http://libjpeg.sourceforge.net/
解压,最基本的是编译:
1改动makefile.vc
# Pull in standard variable definitions
!include <C:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A\Include\Win32.Mak>
也就是改动到自己电脑上Win32.Mak所在的位置。假设出现错误:
makefile.vc(11) : fatal error U1052: 未找到文件“Win32.Mak”
就要再细致检查检查路径了。
2把jconfig.vc改为jconfig.h
否则出现错误:
fatal error U1073: 不知道怎样生成“jconfig.h”
3使用visual studio的命令行工具
d:\libjpeg\jpeg_vs2013\jpeg-6b>nmake /f makefile.vc
这时候就会出现libjpeg.lib
使用CImg和libjpeg
直接上代码了:
#include<iostream>
#define XMD_H
#define cimg_use_jpeg
#include "CImg.h"
int main()
{
std::string path = "00.JPG";
std::string save_path = "02.JPG";
cimg_library::CImg<unsigned char>image(path.c_str());
image.get_resize(1600, 900, -100, -100, 1).save_jpeg(path.c_str(), 100);
system("pause");
return 0;
}
CImg、libjpeg--介绍、配置(操作JPEG)的更多相关文章
- LSI SAS 2208 配置操作
配置LSISAS2208 介绍LSISAS2208扣卡的配置方法. 2.1 登录CU界面 介绍登录LSISAS2208的CU配置界面的方法,以及CU界面的主要功能. 2.2 创建RAID 介绍创建RA ...
- LSI SAS 3108 配置操作
配置LSISAS3108 介绍LSISAS3108的配置操作. 5.1 登录CU界面 介绍登录LSISAS3108的CU配置界面的方法,以及CU界面的主要功能. 5.2 创建RAID 介绍在LSISA ...
- LSI SAS 3008配置操作
配置 LSI SAS 3008 介绍LSISAS3008的配置操作. 4.1 登录CU界面 介绍登录LSISAS3008的CU配置界面的方法. 4.2 创建RAID 介绍在LSISAS3008扣卡上创 ...
- LSI SAS 2308配置操作
介绍LSISAS2308的配置操作 3.1 登录CU界面 介绍登录LSISAS2308的CU配置界面的方法. 3.2 创建RAID 介绍在LSISAS2308扣卡上创建RAID的操作方法. 3.3 配 ...
- LSI SAS 3008 Web配置操作
配置 LSI SAS 3008 介绍LSISAS3008的配置操作. 4.1 登录CU界面 介绍登录LSISAS3008的CU配置界面的方法. 4.2 创建RAID 介绍在LSISAS3008扣卡上创 ...
- VS CODE一些常见配置操作(快捷键设置、C/C++的debug、代码路径配置)
总述 今天来一篇简单的操作文章吧,VSCODE是我们经常用的软件,我之前也写过关于VSCODE远程办公的一些的操作(有兴趣的朋友可以点击进去看看),今天我再稍微介绍一些我其他地方用到的一些操作 ...
- git介绍-常用操作(一)
Table of Contents 1 系列文章 2 git说明 3 git常用命令 3.1 基本操作 3.2 远程操作 4 查看git的配置 4.1 查看已配置项 4.2 其他配置 ...
- [mysql]brew 安装 配置 操作 mysql(中文问题)
mac 下卸载mysqldmg mac下mysql的DMG格式安装内有安装文件,却没有卸载文件--很郁闷的事. 网上搜了一下,发现给的方法原来得手动去删. 很多文章记述要删的文件不完整,后来在stac ...
- imagecreatefromjpeg(): gd-jpeg, libjpeg: recoverable error: Corrupt JPEG data: 1 extraneous bytes be
imagecreatefromjpeg(): gd-jpeg, libjpeg: recoverable error: Corrupt JPEG data: 1 extraneous bytes be ...
随机推荐
- conda设置Python虚拟环境
conda设置Python虚拟环境 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/Co_zy/article/details/7741261 ...
- Qt判断网络是否在
我们已知的网络连接有3种:拨号.使用局域网以及代理上网. 无论哪一种上网方式都可以判断网络是否畅通,借此,我们来做一个判断网络是否畅通(存在)的程序,新建一个基类为QWidget的工程,不要UI. 添 ...
- EF框架搭建小总结--CodeFirst代码优先
前言:之前在下总结编写了一篇 EF框架搭建小总结--ModelFirst模型优先 博文,看到一段时间内该博文的访问量蹭.蹭蹭.蹭蹭蹭...往上涨(实际也不是很多,嘿嘿),但是还是按捺不住内心的喜悦(蛮 ...
- sublime插件CSS转rem配置
{ "px_to_rem": 40, //px转rem的单位比例,默认为40 "max_rem_fraction_length": 6, //px转rem的小数 ...
- java 注解 总结
http://www.importnew.com/23564.html 注解的好处: 1.能够读懂别人写的代码,特别是框架相关的代码. 2.本来可能需要很多配置文件,需要很多逻辑才能实现的内容,就可以 ...
- BZOJ.1003.[ZJOI2006]物流运输(DP 最短路Dijkstra)
题目链接 容易看出是个最短路+DP.既然答案和天数有关,那么就令\(f[i]\)表示前\(i\)天最小成本. 这个转移很好想: \(f[i]=\min(f[i],\ f[j]+cost(j+1,i)+ ...
- BZOJ2085 : [Poi2010]Hamsters
设g[i][j]为i串至少加上几个字符后才能包含j,可以通过Hash求出. 然后就是求经过m-1条边的最短路,用倍增加速Floyed即可,时间复杂度$O(n^3\log m)$. #include&l ...
- OpenJ_POJ C16D Extracurricular Sports 打表找规律
Extracurricular Sports 题目连接: http://acm.hust.edu.cn/vjudge/contest/122701#problem/D Description As w ...
- QQ和微信一键加群加好友代码
QQ和微信一键加群加好友链接代码实现. 1.QQ加群加好友链接(借助腾讯QQ群推广链接和加好友链接实现) (1).加群技术链接: http://qun.qq.com/join.html (2).加好友 ...
- Xcode 模拟器复制解决方案
网址:http://blog.csdn.net/zhangao0086/article/details/38491271