第一次使用code标签 可能排版方面还不熟悉
看的费劲还多多见谅
这里主要是针对imagemagick 的text usage做的一个TestCase
实际使用的工程正在制作中
过程中我也尽力会搜集一些需要注意的问题
放到这里 希望得到大家的指正 同大家共同进步
@Test
public void testScale() throws Exception {
String convert = "C:/Program Files/ImageMagick-6.4.3-Q8/convert.exe";
//支持\n等转义符
String label = "SNOWIING\n中文支持需要编码下待解决\npowered by snowing";
String out = "d:/snowing.jpg";
//generate image
Map pvs = new HashMap();
pvs.put("background", "lightblue"); //背景色
pvs.put("fill", "#00ccff"); //字体填充色
pvs.put("font", "SimSun"); //字体
pvs.put("size", "800x100"); //生成图片的尺寸
pvs.put("pointsize", "24"); //字体大小?
pvs.put("gravity", "center"); //对齐方式?
pvs.put("strokewidth", "1"); //边框宽度
pvs.put("stroke", "blue"); //边框颜色
pvs.put("undercolor", "red"); //文字底色
//pvs.put("kerning", "1"); //文字(字母)间距
//pvs.put("interword-spacing", "1"); //单词间距
ArrayList<String> command = new ArrayList<String>();
command.add(convert);
for(Iterator it = pvs.keySet().iterator();it.hasNext();){
Object _key = it.next();
Object _val = pvs.get(_key);
command.add("-"+String.valueOf(_key));
command.add(String.valueOf(_val));
}
command.add("label:"+label);
command.add(out);
Exec.exec((String[])command.toArray(new String[1]));
//add some effect
Map epvs = new HashMap();
epvs.put("charcoal", "1"); //炭笔
epvs.put("colorize", "250"); //着色 可以指定三种颜色 red/green/blue
//epvs.put("implode", "4"); //内爆效果
//epvs.put("solarize", "42"); //曝光,模拟胶片曝光
//epvs.put("spread", "5"); //随机移动,参数是位移大小
epvs.put("bordercolor", "blue");//增加有色边
epvs.put("border", "25x5");
epvs.put("raise", "25"); //加亮或变暗图片边缘,以增强3D效果
epvs.put("mattecolor", "#ffccdd"); //在图片周围增加装饰性框架
epvs.put("frame", "25x25");
epvs.put("frame", "25x25+0+25");//在图片边缘增加升、降斜角
epvs.put("frame", "25x25+25+0");
command = new ArrayList<String>();
command.add(convert);
for(Iterator it = epvs.keySet().iterator();it.hasNext();){
Object _key = it.next();
Object _val = epvs.get(_key);
command.add("-"+String.valueOf(_key));
command.add(String.valueOf(_val));
}
command.add(out);
command.add(out);
Exec.exec((String[])command.toArray(new String[1]));
}
分享到:
相关推荐
Java 图片处理解决方案:ImageMagick 快速入门教程 Java 图片处理解决方案中,ImageMagick 是一个免费的创建、编辑、合成图片的软件,可以实现图片切割、颜色替换、图片缩略图、图片水印等各种效果。ImageMagick 是...
Java图片处理工具ImageMagick是一个强大的跨平台图形处理库,它允许开发人员在Java应用程序中进行复杂的图像操作,包括但不限于转换、编辑、合成图像以及处理大量格式的图像文件。ImageMagick是由C语言编写的,但...
如果你需要在实际项目中使用im4java,可能需要类似的图像文件来测试代码。 总的来说,ImageMagick和im4java的组合为Java开发者提供了一种强大且灵活的方式来处理图像,而im4java的源代码则有助于理解其实现机制并...
imageMagick与Java 实例,解决java处理图片性能问题
在java中通过ImageMagick安装包和im4java.jar把其他格式图片如pdf转换为PNG,JPEG等常用格式图片之间的相互转换。转换效率还可以。内有安装操作步骤及编码内容。亲测有效。 场景运用:在前端图片格式上传中,需要在...
java程序调用imagemagick安装程序
### ImageMagick与Im4Java配置详解 #### 一、简介 ImageMagick是一款功能强大的图像处理工具,它能够创建、编辑、合成多种格式的图片。Im4Java则是一款Java库,通过调用ImageMagick命令行接口来实现对图片的各种...
java结合imageMagick实现图片渲染合成编辑,源码附送安装文件学习文档。
因为im4java是基于imagemagick的commandline进行调用的java接口,不像 jmagick那样用java jni调用本地imagemagick的api那么复杂。其实安装imagemagick在任何平台都是一样的安装,在linux下面有rpm包,安装那个包,...
im4java是ImageMagick的一个Java开源接口,使用起来非常方便。 很多网站都会用到对图片的一些处理,包括图片的裁剪、给图片加水印、按比例缩放图片等操作,用ImageMagick实现这些功能,性能非常好,图片还不会失真...
测试JMagick,在test包里有Test.java 环境变量生效后再测试 # make test # make javadoc ) ======================================================== 这样就安装完成,接下来的就是配置环境变量。 vi /etc/...
ImageMagick是一款强大的开源图像处理工具,用于在各种操作系统上创建、编辑、组合和转换位图图像。这个软件包的名称“ImageMagick-6.8.9-0-Q16-x64-static.exe”揭示了几个关键信息:版本号(6.8.9-0)、量子深度...
在java中通过ImageMagick安装包和im4java.jar把其他格式图片如HEIC转换为PNG,JPEG等常用格式图片。内有安装操作步骤及编码内容。亲测有效。 场景运用:ios操作系统在前端图片格式上传中。已普遍采用HEIC格式图片。...
ImageMagick安装包;ImageMagick安装注意事项;pdf转imgphp中ImageMagick安装教程;ImageMagick安装包;ImageMagick安装注意事项;pdf转imgphp中ImageMagick安装教程;ImageMagick安装包;ImageMagick安装注意事项;...
本文将详细讲解如何在Windows和Linux环境下,通过Java使用ImageMagick库来支持和转换HEIC图片格式。 ImageMagick是一个开源的命令行工具集合,用于读取、转换和写入多种图像格式。在Linux系统中,为了使ImageMagick...
本文旨在为Java项目中使用jmagick库的ImageMagick安装与配置提供指南。ImageMagick是一款用C语言编写的图像处理工具,它支持对图像进行缩放、旋转、锐化、色彩调整以及特效添加等多种操作。用户既可以通过命令行界面...
在64位Linux环境下安装ImageMagick,特别是与JMagick配合使用,是一个涉及多个步骤的过程,主要目的是为了实现Java应用程序对ImageMagick图像处理功能的调用。以下是详细的安装步骤和相关知识点: 1. **卸载旧版本*...
JMagick是ImageMagick的一个Java绑定,它允许Java应用程序直接利用ImageMagick的功能。在Windows环境下,安装JMagick需要以下几个步骤: 1. 首先,你需要下载并安装ImageMagick。你可以从官方网站`...