1.定义操作和命令
GMOperation op = new GMOperation();
GraphicsMagickCmd cmd = new GraphicsMagickCmd("convert"); //convert说明你要做的是convert里面的操作
或ConvertCmd cmd = new ConvertCmd(true); //true说明你要用的是gm工具

2.缩放的参数说明
op.resize(int width) //它写的是width让我误以为是可以限制宽度的,其实不是,而是限制长宽不能超出width
op.resize(int width, int height) //其实就是相当于限制了一个框,图片等比例放在框里
 如果你想实现图片放在框里,但是是充满框的,即会出现拉伸,则调用
op.resize(width, height, '!');

3.输入和输出的图片格式
《1》你本地已经有图片了,你只需要告知原路径及变换后新生成的图片的路径就OK
op.addImage(srcPath);
op.addImage(newPath);
cmd.run(op);

op.addImage();
op.addImage();
cmd.run(op,srcPath,srcPath);
这样写完图片处理模块就写完啦

《2》你的原图片只是一个输入流,你的输出图片只想要一个输出流
op.addImage("-");               // read from stdin
op.addImage("jpg:-");        //  write to stdout in jpg-format 注意这里的jpg可以根据你的图片格式而改变,但是必须要有,否则不知道你要以何格式生成转换后的图片
 Pipe pipeIn  = new Pipe(is, null);
 Pipe pipeOut = new Pipe(null, os);
cmd.setInputProvider(pipeIn);
cmd.setOutputConsumer(pipeOut);
cmd.run(op);

这样你就可以实现你想要的图片输出流啦

在im4java中使用GraphicsMagick的更多相关文章

  1. (原)Ubuntu14中安装GraphicsMagick

    转载请注明出处: http://www.cnblogs.com/darkknightzh/p/5661439.html 参考网址: http://comments.gmane.org/gmane.co ...

  2. im4java+GraphicsMagick

    package com.jeeplus.modules.isp.utils; import java.io.ByteArrayInputStream; import java.io.ByteArray ...

  3. im4java开发向导

    0.搜索ImageMagick下载安装 1.Setting up the Environment    引入im4java到classpath    设置图片处理引擎的command searchpa ...

  4. 学习PHP中好玩的Gmagick图像操作扩展的使用

    在 PHP 的图像处理领域,要说最出名的 GD 库为什么好,那就是因为它不需要额外安装的别的什么图像处理工具,而且是随 PHP 源码一起发布的,只需要在安装 PHP 的时候添加上编译参数就可以了. G ...

  5. Python开源框架

    info:更多Django信息url:https://www.oschina.net/p/djangodetail: Django 是 Python 编程语言驱动的一个开源模型-视图-控制器(MVC) ...

  6. app后端设计(13)--IM4JAVA+GraphicsMagick实现中文水印

    在app的后台中,有时候为了标示版权,需要给图片加上水印. 在liunx中,IM4JAVA+GraphicsMagick是个高效处理图片的方案,图片的裁剪是使用了这个技术方案,为了减少不必要的开发成本 ...

  7. Im4java+ImageMagick/GraphicsMagick

    im4java的jar包可以在maven库中找到. <dependency> <groupId>org.im4java</groupId> <artifact ...

  8. GraphicsMagick+Im4Java在windows和linux下的配置

    GraphicsMagick介绍及安装 Im4Java包为: im4java-1.2.0.jar 直接在lib下引用即可 GraphicsMagick的安装如下: windows下: 安装:Graph ...

  9. JCrop+GraphicsMagick+Im4Java 实现图像裁减

    Im4Java的安装文档见:http://blog.csdn.net/tangpengtao/article/details/9208047 JCrop的插件:jquery.Jcrop.js jQue ...

随机推荐

  1. oracle任务job

    1)创建测试表 1 create table test1(a date); 2)创建存储过程 1 2 3 4 5 create or replace procedure myproc as begin ...

  2. vmware提示:此虚拟机似乎正在使用中,无法取得所有权的解决办法

    在虚拟机运行时,一次非正常关机.导致虚拟机出现以下错误: 此虚拟机似乎正在使用中. 如果此虚拟机已在使用中,请按“取消”按钮,以免损坏它.如果此虚拟机未使用,请按“取得所有权(&T)”按钮以获 ...

  3. linux install weblogic

    一.安装文件 wls1036_generic.jar        weblogic   通用版本 jrockit-jdk1.6.0_45-R28.2.7-4.1.0-linux-x64    jdk ...

  4. csu 1930 roads(DFS)

    Description Once upon a time there was a strange kingdom, the kingdom had n cities which were connec ...

  5. 《jquery实战》javascript 必知必会(2)

    A2 一等公民函数 在传统 OO 语言里,对象包含数据和方法.这些语言里,数据和方法通常是不同的概念:javascript另辟蹊径. 与其他 js 的类型一样,函数可以作为对象处理,如String.N ...

  6. 【BZOJ】4128: Matrix

    题解 学习一下矩阵求逆 就是我们考虑这个矩阵 \(AA^{-1} = I\) 我们相当于让\(A\)乘上一个矩阵,变成\(I\) 我们可以利用初等行变换(只能应用初等行变换,或只应用初等列变换) 分三 ...

  7. 【LOJ】#2496. 「AHOI / HNOI2018」毒瘤

    题面 还有这么诚实的出题人! 我们最多影响20个点,然后把这20个点的虚树建出来,并且枚举每个点的选举状态,如果一个点选或不选可以通过改\(dp[u][0] = 0\)或\(dp[u][1] = 0\ ...

  8. 【LOJ】#2888. 「APIO2015」巴邻旁之桥 Palembang Bridges

    题解 发现我们选择一座桥会选择力\(\frac{s + t}{2}\)较近的一座桥 然后我们只需要按照\(s + t\)排序,然后枚举断点,左边取所有s和t的中位数,右边同理 动态求中位数用平衡树维护 ...

  9. Java动态性之--反射机制

    1. 动态语言 程序运行时,可以改变结构或变量类型.典型的语言: Python.ruby.javascript等 如下javascript代码 function test(){ var s = &qu ...

  10. VS2010中设置程序以管理员身份运行

    VS2010中设置程序以管理员身份运行 直接项目右键---属性---连接器---清单文件---uac执行级别 选择requireAdministrator 重新编译 即可 这样程序直接运行就拥有管理员 ...