1. 显示图像文件详细信息
    gm identify a.jpg

1.更改当前目录下.jpg的尺寸大小,并保存于目录.thumb里面
gm mogrify -output-directory .thumbs -resize 320x200
.jpg

  1. 将三幅图像和并为一副图像
    gm montage -mode concatenate -tile 3x1 image1.ppm image2.ppm image3.ppm concatenated.miff

  2. 显示图像
    gm display 'vid:*.jpg'

  3. 格式转换
    gm convert a.bmp a.jpg
    gm convert a.bmp a.pdf(转换为pdf)

  4. 调整图像dpi和大小
    gm convert -density 288 -geometry 25% image.gif image.gif
    (缩小为原先的1/4,并且dpi为288)

gm convert -resize 640x480 image.gif image.gif
(转换为640x480的图像)

  1. 在图像上添加文字
    gm convert -font Arial -fill blue -pointsize 18 -draw "text 10,10 'your text here'" test.tif test.png

  2. 从gif文件中抽取第一帧
    gm convert "Image.gif[0]" first.gif

  3. 建立gif图像
    gm convert -delay 20 frame.gif animation.gif
    gm convert -loop 50 frame
    .gif animation.gif
    (让动画循环50次)

gm convert -delay 20 frame1.gif -delay 10 frame2.gif -delay 5 frame3.gif animation.gif
(对每一帧手动指定延时)

  1. 截屏
    gm import a.jpg
    用鼠标点击所要截取的窗口,或者选择截屏区域,保存为a.jpg

gm import -frame a.jpg
保留窗口的边框

GraphicsMagick常用管理命令

查看版本后安装情况:gm identify -version
结果::打印出信息

识别图片:gm identify /Users/zhaorai/Pictures/照片/100CANON-1/IMG_4108.JPG
结果:/Users/zhaorai/Pictures/照片/100CANON-1/IMG_4108.JPG JPEG 3648x2736+0+0 DirectClass 8-bit 2.5M 0.000u 0:01

识别图片(高级):gm identify -verbose /Users/zhaorai/Desktop/4.png
结果:打印出很多信息。

GraphicsMagick缩放比例的精准控制

原始图片是input.jpg,尺寸:160x120

只缩小不放大
gm convert input.jpg -resize "500x500>" output_1.jpg
加了>,表示只有当图片的宽与高,大于给定的宽与高时,才进行“缩小”操作。
生成的图片大小是:160x120,未进行操作
如果不加>,会导致图片被比等放大。

等比缩图 (缺点:产生白边)
gm convert input.jpg -thumbnail "100x100" output_1.jpg
生成的图片大小是:100x75

非等比缩图,按给定的参数缩图(缺点:长宽比会变化)
gm convert input.jpg -thumbnail "100x100!" output_2.jpg
生成的图片大小是:100x100

裁剪后保证等比缩图 (缺点:裁剪了图片的一部分)
gm convert input.jpg -thumbnail "100x100^" -gravity center -extent 100x100 output_3.jpg
生成的图片大小是:100x100,还保证了比例。不过图片经过了裁剪,剪了图片左右两边才达到1:1

填充后保证等比缩图 (缺点:要填充颜色,和第一种方法基本一样)
gm convert input.jpg -thumbnail "100x100" -background gray -gravity center -extent 100x100 output_4.jpg
生成的图片大小是:100x100,还保证了比例,同时没有对图片进行任何裁剪,缺失的部分按指定颜色进行填充。

裁剪、填充相结合 (缺点:最差的方法)
gm convert input.jpg -thumbnail "10000@ -background gray -gravity center -extent 100x100 output_5.jpg
生成的图片大小是:100x100,这次保证了大小和比例,其中的10000就是100x100的乘积,同时在填充和裁剪之间做了一个平衡。

位深度32 转为24
IE6,7,8不支持显示“位深度32”的图片,但IE9、火狐、谷歌浏览器就可以显示。
使用GM,把“位深度32”的图片转换为“位深度24”的图片
输入图片zzz.jpg就是“位深度32”的图片,输出图片 zzz_out.jpg就是“位深度24”的图片
gm convert -resize 100x100 -colorspace RGB zzz.jpg zzz_out.jpg
转完后,图片的颜色会有轻微变化。

在浏览器上选择图片裁剪的坐标

如果想让用户手动裁剪头片的话,就是在浏览器上选择图片裁剪的坐标,imgAreaSelect是个好选择。
imgAreaSelect is a jQuery plugin for selecting a rectangular area of an image.
http://odyniec.net/projects/imgareaselect/

======================其它内容=================================
Jmagick锐化图片功能
--------------------------------------------------
ImageInfo info = new ImageInfo(filepath+"pics.jpg");
MagickImage image = new MagickImage(info);
MagickImage sharpened = image.sharpenImage(1.0, 5.0);
sharpened.setFileName(filepath+"sharpened.jpg");
sharpened.writeImage(info);
主要是函数sharpenImage(double arg0, double arg1);
建议arg0=1.0 arg1=5.0
arg0为半径 arg1为阙值
这样做的目的:
明显会使图片变得清晰好看。

JMagick 常用技巧

ImageMagick中使用+profile "" 删除图片中不存储附加信息.
JMagick中,使用MagickImage类上的profileImage("
", null)方法,删除图片中不存储附加信息.
删除图片中的ICC,ICM, IPTC,8bim等信息
ImageMagick中使用-quality控制图片的品质,
JMagick中,使用ImageInfo类上的setQuality(80)方法,控制图片的品质

在Web应用(Resin,Tomcat)使用ImageMagick

如果要在Web应用(Resin,Tomcat)使用ImageMagick,
需要再运行时加入参数: -Djmagick.systemclassloader=no
或者在程序中写入:System.setProperty("jmagick.systemclassloader", "no");

graphicsmagick常用命令的更多相关文章

  1. GraphicsMagick的命令行使用示例

    GraphicsMagick是从 ImageMagick 5.5.2 分支出来的,但是现在他变得更稳定和优秀,GM更小更容易安装.GM更有效率.GM的手册非常丰富GraphicsMagick的命令与I ...

  2. ImageMagick简介、GraphicsMagick、命令行使用示例

    http://elf8848.iteye.com/blog/382528 ImageMagick资料 ------------------------------------------------- ...

  3. (转)GraphicsMagick、命令行使用示例

    GraphicsMagick是从 ImageMagick 5.5.2 分支出来的,但是现在他变得更稳定和优秀,GM更小更容易安装.GM更有效率.GM的手册非常丰富GraphicsMagick的命令与I ...

  4. Linux 常用命令(持续补充)

    常用命令: command &:将进程放在后台执行 ctrl + z:暂停当前进程 并放入后台 jobs:查看当前后台任务 bg( %id):将任务转为后台执行 fg( %id):将任务调回前 ...

  5. LVM基本介绍与常用命令

    一.LVM介绍LVM是 Logical Volume Manager(逻辑卷管理)的简写,它是Linux环境下对磁盘分区进行管理的一种机制LVM - 优点:LVM通常用于装备大量磁盘的系统,但它同样适 ...

  6. Linux学习笔记(一):常用命令

    经过统计Linux中能够识别的命令超过3000种,当然常用的命令就远远没有这么多了,按照我的习惯,我把已经学过的Linux常用命令做了以下几个方面的分割: 1.文件处理命令 2.文件搜索命令 3.帮助 ...

  7. git常用命令(持续更新中)

    git常用命令(持续更新中) 本地仓库操作git int                                 初始化本地仓库git add .                       ...

  8. 【原】npm 常用命令详解

    今年上半年在学习gulp的使用,对npm的掌握是必不可少的,经常到npm官网查询文档让我感到不爽,还不如整理了一些常用的命令到自己博客上,于是根据自己的理解简单翻译过来,终于有点输出,想学习npm这块 ...

  9. npm常用命令

    npm常用命令 环境:win7 npm 是什么 NPM(node package manager),通常称为node包管理器.顾名思义,它的主要功能就是管理node包,包括:安装.卸载.更新.查看.搜 ...

随机推荐

  1. Repeater 嵌套,子级Repeater获取 父级Repeater 中的值

    第一种方法,子级Repeater中绑定父级的某个字段: <%# DataBinder.Eval((Container.NamingContainer.NamingContainer as Rep ...

  2. 【嵌入式】——ads1.2的安装注意事项

    安装完ads的时候会出现错误,因为还要安装License Installation Wizard. 下一步会出现这个 然后点击Browse... 找到ads1.2下的CRACK(crack)文件夹的L ...

  3. linq操作符:聚合操作符

    一.Aggregate操作符 Aggregate操作符对集合值执行自定义聚合运算.来看看Aggregate的定义: public static TSource Aggregate<TSource ...

  4. centos7下部署elasticSearch集群

    OS:Centos7x虚拟机 1H2Gjdk:1.8elasticsearch:5.6.0 单节点配置请参考:centos7下elasticSearch安装配置 配置master节点 # 在配置文件的 ...

  5. 使用STC-ISP向KEIL添加STC芯片头文件

    第一步:打开“STC-ISP”软件. 第二步:点击右手边“Keil仿真设置”,然后点击“添加型号和头文件到Keil中添加STC仿真器驱动到Keil中”. 第三步:在弹出的“浏览文件夹”对话框中,找到你 ...

  6. Jna & twain

    参考海康威视Java版示例(采用Jna实现) 获得win32原生窗口句柄:HWND hwnd = new HWND(Native.getComponentPointer(panelRealplay)) ...

  7. orcale的over的使用

    --------------------------- 建表 --------------------------- create table test_user( id VARCHAR2(12), ...

  8. maven工程如何引用css和js文件

    工程目录结构如下图: 目的: 在index.jsp中引用hello.js和base.css文件 实现: 在web.xml中,新增<servlet-mapping>     <serv ...

  9. webpack4--热更新

    所谓热更新,就是在浏览器能同步刷新你的代码.webpack 热更新依赖 webpack-dev-server.具体实现步骤如下: 1.局部安装依赖 webpack-dev-server npm ins ...

  10. 路由策略和策略路由 & route-map

    今天,这个专题应用下route-map,在这个之前,有很多内容需要掌握,不是简单的制定一个路由图就可以了. -------- 本次专题理论的东西居多,但是不是复制黏贴,是加上自己的理解思想. 第一个要 ...