将gif动画生成缩略图,有一个难点,就是gif动画应该是多帧的。如果按照普通图进行缩小,比如直接调用如下语句(见在java环境中使用imagemagick):
image=image.scaleImage(60, 60);
只能得到第一帧的缩略图,这样就不是动画了。
需要如下调用才可生成保持动画的缩略图。
import magick.*; /** * Hello world! * */ public class App { public static void main( String[] args )throws Exception { MagickImage image = new MagickImage( new ImageInfo( "/home/ubuntu/10261.gif" ) ); MagickImage[] images=image.breakFrames(); for(int i=0;i<images.length;i++){ images[i]=images[i].scaleImage(64,64); } image=new MagickImage(images); image.setImageAttribute( "Dispose","1" ); image.setImageAttribute( "Delay","30" ); image.setFileName("/home/ubuntu/r40.gif"); image.writeImage(new ImageInfo()); } }
面代码的基本思路就是,将gif的各帧分别生成缩略图,再合成为gif格式的图。当遇到比较大的gif动画时,过程会比较慢。
不过,在我这里的环境下,生成的gif图无法在ie浏览器播放,只能显示静态的第一帧图像。而在其他浏览器和图片查看器中,可以正常播放。
怀疑是jmagick版本问题,这里使用的是jmagick6-6.2.6-0版本。
有时间再测试下:
- 在windows环境下是否是这样的问题;
- 在ubuntu inux环境下手工编译(目前使用的是ubuntu的deb包)后运行的情况。
相关推荐
里面包括jmagick 所需所有文件,jmagick.dll,jmagick.jar 还有安装文件, 以及linux安装说明! jmagick jmagick.jar jmagick资料 jmagick缩略图 jmagick jmagick.jar jmagick资料 jmagick缩略图
JMagick提供API来实现这一功能,开发者可以设置比例或固定大小,以创建不失真的缩略图。 其次,**水印**的添加则是在图片上叠加文字、图像或者其他元素,作为版权保护或装饰用途。JMagick允许开发者指定水印的位置...
例如,一个Web应用可能使用Jmagick来动态生成缩略图,或者在上传图片时进行预处理,以确保符合规定的尺寸和格式。 总的来说,Jmagick提供了一种灵活且强大的方式,让Java开发者能够充分利用ImageMagick的图像处理...
本文将深入探讨“Jmagick缩图”这一主题,它是一种基于Java的图片处理工具,用于快速有效地生成图片的缩略图。 JMagick是ImageMagick的一个Java接口,ImageMagick是一个强大的跨平台图像处理库。它允许Java开发者...
1. **初始化 JMagick**:在使用 JMagick 前,必须调用 `InitializeMagick(null)` 方法来初始化库。这告诉 JMagick 使用系统路径来查找 ImageMagick 库。 2. **读取图像**:可以使用 `ImageInfo` 类来加载图像文件。...
jmagick.jar java图像应用
本文将详细介绍如何在Java环境中安装和配置JMagick,以及如何使用提供的示例进行测试。 ### 1. 获取必备组件 首先,你需要下载以下两个关键组件: - **jmagick.dll**: 这是JMagick的核心动态链接库,它提供了Java...
jmagick处理图片,图片高质量压缩,图片加水印。
- 图像处理服务:在服务器端,JMagick可以作为后台服务,对用户上传的图片进行自动化处理,如生成缩略图、调整尺寸、添加水印等。 - 数据可视化:在数据科学领域,JMagick可以帮助将复杂的数据转换成可视化的图像,...
10. 动态图处理:JMagick也支持GIF这样的动画格式,可以处理动态图像序列。 在实际开发中,JMagick的性能优化也是一个重要的方面。通过合理的内存管理、缓存策略和并发处理,可以提升图像处理的效率,特别是在处理...
1. **广泛的图像格式支持**:JMagick继承了ImageMagick的强大功能,能够处理超过100种不同的图像文件格式,包括常见的JPEG、PNG、GIF、BMP以及各种专业图像格式如TIFF、PSD等。 2. **图像处理操作**:JMagick允许...
本文将深入探讨JMagick的使用实例以及如何在处理图像时防止内存泄露,以确保程序的稳定性和高效性。 JMagick是Java接口到ImageMagick的一个扩展,ImageMagick是一款强大的跨平台命令行工具,用于转换、编辑和合成...
6. 动态图处理:对GIF等动态图进行编辑和处理。 在Java项目中,通过JMagick的API,可以轻松集成这些功能,使得图像处理工作变得简单高效。然而,需要注意的是,虽然JMagick提供了Java接口,但底层仍然是C++实现,...
- 在使用JMagick时,注意内存管理和性能优化,避免处理大型图像时出现性能瓶颈。 **5. 进阶学习资源** - JMagick官方文档:了解详细的API和使用示例。 - ImageMagick命令行参考:熟悉底层库的功能,有助于理解...
JMagick作为Java与ImageMagick之间的桥梁,提供了一种在Java环境中使用ImageMagick的强大功能。本文将深入探讨JMagick的核心概念、安装过程、使用方法以及一些实际的应用示例。 首先,JMagick是ImageMagick的一个...
6.4.5-3-Q16-windows-dll.exe,jmagick.dll,jmagick.jar,压缩包中的版本统一,安装ImageMagick,复制ImageMagick安装目录的所有.dll文件和Jmagick.dll到,系统的system32下 即可使用,System.setProperty("jmagick....
描述和标签中的信息与标题相同,暗示这个压缩包可能包含了完整的JMagick源码或者二进制库,以及可能的构建或配置文件,以便用户在自己的Java项目中集成和使用JMagick。 压缩包内的文件名称列表包括: 1. README.TXT...
JMagick是Java版的ImageMagick,ImageMagick是一款广泛使用的开源图像处理软件,能够读取、转换和保存各种格式的图像。JMagick则将其功能融入到Java环境中,使得Java开发者可以利用C++编写的ImageMagick库进行图像...
本文将详细介绍 JMagick 的使用方法和关键知识点。 **1. 安装与配置** 首先,你需要下载 JMagick 和 ImageMagick。JMagick 通常会提供与特定版本的 ImageMagick 相匹配的 jar 包。将 `jmagick.jar` 添加到你的项目...
jmagick image generate or operator library