在本文中,您将会了解到关于centos6.5安装ImageMagick&java使用ImageMagick压缩图片的新资讯,同时我们还将为您解释linux安装imagemagick的相关在本文中,我们
在本文中,您将会了解到关于centos6.5 安装ImageMagick&java使用ImageMagick压缩图片的新资讯,同时我们还将为您解释linux安装imagemagick的相关在本文中,我们将带你探索centos6.5 安装ImageMagick&java使用ImageMagick压缩图片的奥秘,分析linux安装imagemagick的特点,并给出一些关于centos 5 php5.6 安装imagemagick和imagick、CentOS 6.5/6.3升级安装ImageMagick7.0.1、CentOS 6安装ImageMagick扩展的2个方法、centos imagemagick的实用技巧。
本文目录一览:- centos6.5 安装ImageMagick&java使用ImageMagick压缩图片(linux安装imagemagick)
- centos 5 php5.6 安装imagemagick和imagick
- CentOS 6.5/6.3升级安装ImageMagick7.0.1
- CentOS 6安装ImageMagick扩展的2个方法
- centos imagemagick
centos6.5 安装ImageMagick&java使用ImageMagick压缩图片(linux安装imagemagick)
一 安装ImageMagick
1.安装依赖库
yum install libjpeg* libpng* freetype* gd*
2.安装ImageMagick
yum install ImageMagick
3.测试安装是否成功
convert -quality 75% 1.jpg zoom.jpg
二 java中使用ImageMagick
1.导入jar包
<dependency> <groupId>org.im4java</groupId> <artifactId>im4java</artifactId> <version>1.4.0</version> </dependency>
2.在代码中使用ImageMagick进行压缩图片
IMOperation operation = new IMOperation(); operation.addImage(orgfileName); operation.quality(0.75); operation.addImage(zoomfileName); ConvertCmd cmd = new ConvertCmd(); cmd.run(operation);
3.检查运行结果
图片被正常压缩,省时省力。
三 使用ImageMagick的常用的方式
1.对用户生成的图片进行压缩
对于用户自己上传的图片不能简单的 用css限制大小,因为这样每次加载图片时候还是会加载整幅大图。占用多余的宽带,并且影响页面加载速度。应该根据实际显示需要进行缩放。比如我想要用户相册里的图片大小不能超过500x300:
用ImageMagick处理起来很简单
convert -resize “500x300>“ input.jpg output.jpg #如果图片比500x300小就保持原样,以防小图片被放大失真。
2.生成不同比例的缩略图
一般相册等应用,都会提供缩略图和预览图,这些缩略图同样不能简单的用css来限制大小,要为每个图片生成不同比例的预览图。
3.去除多余信息
Exif信息是数码相机在拍摄过程中采集的一系列信息,这些信息放置在我们熟知的jpg文件的头部,也就是说Exif信息是镶嵌在JPEG图像文件格式内的一组拍摄参数,主要包括摄影时的光圈、快门、ISO、日期时间等各种与当时摄影条件相关的讯息,相机品牌型号,色彩编码,拍摄时录制的声音以及全球定位系统(GPS)等信息。简单的说,它就好像是傻瓜相机的日期打印功能一样,只不过Exif信息所记录的资讯更为详尽和完备。不过,具有Exif信息的JPEG图像文件要比普通的JPEG文件略大一点。还有就是像PS这种软件处理过的图片会有“program comments”。如果不是专业的摄影类网站,这些信息是没有用的,可以去掉:
convert -strip input.jpg output.jpg
4.调节压缩比例
大多时候,我们的网站并不需要那么清晰的图片,适量调节JPG图片的压缩比会减少图片大小,肉眼并不会分辨出质量被压缩后的图片。通常75%是最佳比例
convert -quality 75% input.jpg output.jpg
上面几个步骤可以一次搞定:
convert -resize “500x300” -strip -quality 75% input.jpg output.jpg
5.BMP,GIF,PNG等格式的处理
对于BMP直接转成JPG就可以了。再按照上面的方式处理。
而GIF和PNG貌似有些特殊。GIF的一些特性(动画效果,透明等)是JPG没有的,可以根据实际情况选择转或不转,如果转换成jpg,取第一帧只需要这样:
convert -format jpg input.gif input.jpg
PNG也可以通过减少PNG图片color数量的办法达到压缩的目的。但是这种办法压缩出来的图像可以明显看出来失真,而且呈锯齿状。
对于真实世界的PNG图片(通常指照片),一般先转换成JPG,再通过上面的办法来压缩。
但是要注意一点,透明或半透明的PNG图片在转换成JPG时透明部分会变成黑色。。。建议做用户头像时候不要转成JPG。。很难看~~~
本人头像就是深受毒害。。
关于图片扩展名
发现大部分网站喜欢把用户上传的图片(头像,相册等)都统一转成特定格式(一般都是jpg)。这样做的潜在弊端就是在用像ImageMagick这样的软件处理的时候会根据扩展名做隐式格式转换。
个人觉得在保存图片的时候不加扩展名处理起来更灵活一些。
注:把上面的命令行用mini_magick改写用到rails里很容易的。mini_magick本质就调用系统命令行嘛~~
links:
本文所说的都是对用户上传的图片处理,对网站自身的图片(header,banner等)处理《Even Faster Websites》一书第十章里面写的很详细了:
http://www.graphics.com/modules.php?name=Sections&op=viewarticle&artid=756
更多ImageMagick用法:
http://www.imagemagick.org/script/index.php
参考博客:
使用ImageMagick对图片进行全面压缩
http://www.jb51.cc/article/p-ahzzvatp-bms.html
Java 图片处理解决方案:ImageMagick 快速入门
http://www.cnblogs.com/chanshuyi/p/quick_start_of_image_magick.html
centos 5 php5.6 安装imagemagick和imagick
在百度查了好久,试验了好久,各种人写的各种不靠谱的帖子,通通失败,现在已经舍弃百度了,下面是我google出来的,经过验证后,很快实现了安装这俩扩展,介绍一下环境先,centos5 64bit,PHP5.6源码安装 ,yum源最好更新一下为阿里的,具体命令如下:
1.更新源:
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak
2.下载源:
CentOS 5
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-5.repo
CentOS 6
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo
3.运行源:
yum clean all
yum makecache
4.Yum安装PHP-pear:
yum -y install PHP-pear
5.Yum安装ImageMagick:
yum -y install ImageMagick*
pecl install Imagick
这一步需要手动指定Imagemagick的安装路径,因为Imagick需要找Imagemegick的库文件,where is Imagemegick就好了,我的是在/usr/local/Imagemagick下,回车,然后Imagick就自动编译安装了
6.检查一下是否安装成功:
PHP -i | grep Imagick
出现这些就说明成功了:
imagick classes => Imagick,ImagickDraw,ImagickPixel,ImagickPixelIterator,ImagickKernel
Imagick compiled with ImageMagick version => ImageMagick 6.9.5-7 Q16 x86_64 2016-08-18 http://www.imagemagick.org
Imagick using ImageMagick library version => ImageMagick 6.9.5-7 Q16 x86_64 2016-08-18 http://www.imagemagick.org
CentOS 6.5/6.3升级安装ImageMagick7.0.1
官网下载链接:http://www.imagemagick.org/download/
ImageMagick7.0.1编译安装:(参考http://www.linuxidc.com/Linux/2016-05/131331.htm)
官方说明:https://www.imagemagick.org/discourse-server/viewtopic.PHP?f=4&t=29588
源码包下载:
git clone http://git.imagemagick.org/repos/ImageMagick.git
依赖环境:
rpm �qa |grep libpng
rpm �qa |grep libpng-devel
rpm �qa |grep libjpeg
rpm �qa |grep gd-devel
yum install libpng* libjpeg* gd-devel -y
编译安装:
cd ImageMagick/
./configure --prefix=/usr/local/ImageMagick --enable-shared --enable-static --without-perl
make && make isntall
设置环境变量:
echo "export PATH=$PATH:/usr/local/ImageMagick/bin" >> /etc/profile
移除旧版本:
yum remove ImageMagick -y
加载环境变量:
source /etc/profile
验证版本安装是否成功:
convert -version
Version: ImageMagick 7.0.1-2 Q16 x86_64 2016-05-05 http://www.imagemagick.org
检查支持的一些图片格式:
convert -list format 支持的所有格式
convert -list format|grep png 查看是否支持png
convert -list format|grep jpeg 查看是否支持jpeg
还要记得验证论坛和网站程序是否能正常刷出验证码来。
CentOS 6安装ImageMagick扩展的2个方法
ImageMagick,是一个软件套件用来创建,编辑,合成,或转换位图图像。我们可以用它来读取和在各种格式写图像,包括DPX、EXR、GIF、JPEG、PDF、SVG和TIFF等格式。我们可以用来使用ImageMagick组件调整大小、翻转、镜像、旋转、扭曲、剪切以及转换图像,调整图像色彩,以及适用于各种特殊效果,或绘制文本,线,面,椭圆和贝塞尔曲线。
ImageMagick的可以通过使用Remi安装库,或通过编译从最新的稳定版本的源代码进行安装。下面老左就整理来自国外的教程,分为不同的方法安装。
方法之一、安装库安装ImageMagick扩展
A - 如果我们没有安装EPEL库,需要先安装
wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
rpm -Uvh epel-release-6*.rpm
B -安装Remi库
wget http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
rpm -Uvh remi-release-6*.rpm
C -编辑/etc/yum.repos.d/remi.repo文件启动
我们需要找到Remi库把enabled=0改成enabled=1
D -安装需要的依赖包环境
yum install -y gcc php-devel php-pear
E -安装ImageMagick
yum install -y ImageMagick ImageMagick-devel
安装完毕之后,我们看到这样的提示说明是安装成功了。
方法之二、从源代码安装ImageMagick
A -安装依赖包环境
yum -y groupinstall ''Development Tools''
yum -y install bzip2-devel freetype-devel libjpeg-devel libpng-devel libtiff-devel giflib-devel zlib-devel ghostscript-devel djvulibre-devel libwmf-devel jasper-devel libtool-ltdl-devel libX11-devel libXext-devel libXt-devel lcms-devel libxml2-devel librsvg2-devel OpenEXR-devel php-devel
B -获取安装源
wget http://www.imagemagick.org/download/ImageMagick.tar.gz
tar xvzf ImageMagick.tar.gz
cd ImageMagick*
C - 配置和编译源代码
./configure
make
make install
这个需要一点时间,我们等待。
D -验证是否安装成功
convert --version
E -安装PHP扩展
pecl install imagick
如果有出现-bash: pecl: command not found提示错误,我们需要先运行yum install php-devel php-pear httpd-devel环境包,然后再执行上面一步。
F - php.ini添加extension=imagick.so
回车执行之后,我们就可以看到提示需要再PHP.INI中添加extension=imagick.so,在/etc/php.ini文件中添加就可以。
G -然后检查是否安装成功
php -m | grep imagick
我们可以看到已经OK。如果你正在运行一个Web服务器,如Apache,记得重新启动。
service httpd restart
centos imagemagick
centos 编译安装的ImageMagick /etc/profile环境变量已经配置好了 为什么php里面exec(''conver -version''); 无法执行 必须还要手动指定路径比如 exec(''/usr/local/imagemagick/bin/conver -version'');才可以 而且在php里面echo ("echo $PATH");没有显示显示环境变量里面配置的路径 但是通过yum 安装的ImageMagick 可以不指定路径直接运!help 这玩意已经折腾两天了 谁知道什么情况 说明下php是www用户今天关于centos6.5 安装ImageMagick&java使用ImageMagick压缩图片和linux安装imagemagick的讲解已经结束,谢谢您的阅读,如果想了解更多关于centos 5 php5.6 安装imagemagick和imagick、CentOS 6.5/6.3升级安装ImageMagick7.0.1、CentOS 6安装ImageMagick扩展的2个方法、centos imagemagick的相关知识,请在本站搜索。
本文标签: