
Linux下成功安装ImageMagick-6.5及JMagick-6.4教程

Linux下安装ImageMagick与JMagick是一个涉及多种软件配置与操作步骤的过程,下面将详细解释上述文件提供的步骤和相关知识点。
**ImageMagick简介**
ImageMagick是一个功能强大的命令行图像处理工具,广泛应用于Linux、Unix等操作系统上,支持超过100种图片格式。它允许用户通过命令行执行复杂的图像处理任务,如转换图像格式、调整图像大小、添加文本、应用各种滤镜效果等。由于其高度的可定制性和扩展性,它也被集成在多种编程语言中,用于图像处理应用程序的开发。
**JMagick简介**
JMagick是ImageMagick的Java接口,它将ImageMagick的功能包装在Java API中,使得Java程序能够直接利用ImageMagick的强大功能进行图像处理。JMagick使得在Java环境下进行高性能图像处理变得简单,同时也方便了跨平台图像处理应用的开发。
**安装前提条件**
在安装ImageMagick和JMagick之前,需要确保已经安装了一些基础的开发包,如zlib、freetype、libpng、libjpeg等。这些开发包提供了对相应图形格式的底层支持。如果缺失这些包,需要从Linux安装光盘或者通过网络安装相应的rpm包。
**安装步骤解析**
1. 链接Java运行环境:在Linux的/usr/bin/目录下,使用ln命令创建指向正确java和javac路径的符号链接。这一步骤确保系统能够找到正确的Java运行环境。
2. 安装必要的图形格式支持库:例如libpng、jpeg-6b等。这些库是ImageMagick处理相关格式图片的基础。如果需要支持tiff格式,同样需要安装libtiff库。
3. 配置和安装jpeg库:从官方网站下载jpeg-6b的源代码包,通过configure、make、make install的步骤来编译和安装。
4. 配置和安装png库:同样下载libpng的源代码包,进行编译和安装。
5. 配置和安装tiff格式支持文件:通过tar命令解压tiff源代码包,然后执行configure、make、make install命令。
6. 安装ImageMagick:下载ImageMagick的源代码包,进行解压,然后执行configure、make、make install命令。
7. 安装JMagick:下载JMagick的源代码包和jar包,执行autoconf、configure、make all、make install等命令安装。
8. 配置环境变量:编辑/etc/profile文件,添加JAVA_HOME、PATH、LD_LIBRARY_PATH、DYLD_LIBRARY_PATH和CLASSPATH等环境变量,确保系统能够找到Java、ImageMagick和JMagick的库文件。
9. 使环境变量生效:执行ldconfig命令,更新系统库的链接。然后注销当前用户并重新登录,以确保环境变量更改生效。
10. 测试安装:执行convert命令,检查ImageMagick是否正确安装。编写并测试Java程序来检查JMagick是否正常工作。
**在Web服务器中使用JMagick**
如果需要在Web Application Server中使用JMagick,比如Resin或Tomcat,需要在运行Java虚拟机时加入特定参数(-Djmagick.systemclassloader=no)或在程序中设置相应的系统属性,以避免类加载器冲突。
**ImageMagick命令行使用示例**
- 使用convert命令对图片进行缩放、裁剪等操作:
- `convert -resize 100x200 22.jpg 11.jpg`:将图片按照100x200的比例缩放。
- `convert -resize 100x200\! 22.jpg 11.jpg`:强制按照给定的100x200大小缩放,忽略图片原始比例。
- `convert -crop 100x200+10+10 22.jpg 11.jpg`:从图片中裁剪出100x200大小的部分,从坐标(10,10)开始。
通过上述步骤和知识的介绍,我们可以看到在Linux环境下安装ImageMagick与JMagick涉及到对系统环境的精细配置,编译安装多个依赖包,以及对JMagick进行Java环境的配置。这些操作要求用户有一定的系统知识和操作经验。安装成功后,开发者可以利用ImageMagick与JMagick提供的强大功能,进行高效的图像处理任务。
相关推荐





















leidev
- 粉丝: 0
最新资源
- 深度学习下的MATLAB声音预处理与Fast3DScattering模拟代码
- Project Euler 数学问题集 Java 解法分析
- 全球威胁情报项目:收集鼻息传感器数据与误报分析
- MaNGOS世界数据库教程:安装与应用指南
- Go语言扩展:实现mime类型自动识别与管理
- Chrome扩展程序:Salesforce Chatter共享指南
- ReSharperr.ReJS 插件实现JavaScript高效重构
- Android防火墙Pro v1.3.1:保护免受网络攻击和侵扰
- ASP.NET广告公司业务管理系统毕业设计教程
- 使用Makefile自动化管理Ghost Docker镜像与实例
- Tiqr-android:未维护的QR扫描器在Titanium Android上的应用
- MATLAB-LiDAR-Guide: 深入激光雷达开发与应用
- 轻松约车:远大驾校Chrome插件使用教程
- IP Tools「IP工具」v8.21:安卓最强网络工具箱
- DISchedule:简化改造TBSchedule实现分布式任务调度优化
- Node.js项目:通过编程记忆英语单词
- React + D3 构建布尔状态图表教程
- Transproc Contrib: Ruby中功能转换与值对象强制转换
- 掌握rtc.js:基于rtc.io包的视频会议基础演示
- WordPress安全Cookie禁用插件使用说明
- Git与Heroku入门:构建Node.js应用
- 掌握 ofxAudioUnit:创建混音器、乐器、播放器及效果器示例指南
- Java开发的TCMB今日货币XML解析器详解
- Mockery:简化HTTP请求模拟的高效工具