`
yzgfbj
  • 浏览: 78485 次
  • 来自: ...
社区版块
存档分类
最新评论

ImageMagick处理图片是使用Msl(问题补充)

阅读更多
在使用外部msl配置生成图片后,发现原有的配置方式,当大图处理小图时,没有问题。当传入的图片尺寸小于要格式化的尺寸时,由于配置文件不知道,会强制resize,将小图拉伸影响效果。
<?xml version="1.0" encoding="UTF-8"?>	
<image>	    
	    <read filename="test.jpg" />	   
		  <resize geometry="200x200" />	
	    <write filename="test_200.jpg" />
</image>

如上示例,当test.jpg的尺寸大于200x200时,没有问题,会生成200x200的小图test_200.jpg。当时当test.jpg的尺寸小于200x200时,通过配置文件生成会强制拉伸到200x200的图片,而实际使用中一般当小于要处理的尺寸时,应该不处理。
查了imageMagick的convert -resize的说明有如下的内容:
-resize widthxheight{%} {@} {!} {<} {>} {^}
Use > to change the dimensions of the image only if its width or height exceeds the geometry specification. < resizes the image only if both of its dimensions are less than the geometry specification. For example, if you specify 640x480> and the image size is 256x256, the image size does not change. However, if the image is 512x512 or 1024x1024, it is resized to 480x480. Enclose the geometry specification in quotation marks to prevent the < or > from being interpreted by your shell as a file redirection.
大概意思就是说用了> < 号,对于实际的尺寸会有一些影响。
为了测试是否正确,就在cmd命令行下试验
convert -resize 200x200> test.jpg test_200.jpg

报错:convert: missing an image filename `test_200.jpg'.
奇怪让生成test_200.jpg,竟然报找不到文件。
通过多次的实验发现有可能是windows重定向>的问题。
实验:
convert -resize >200x200 test.jpg test_200.jpg

报错:convert: invalid argument for option `test.jpg': -resize.
包参数错误,但是看文件夹生成了200x200的一个文件,大小为空,说明windows重定向起了作用。
一时不知怎么解决,旁边的搭档提醒,在msl文件里直接加试一下(200x200>)
<?xml version="1.0" encoding="UTF-8"?>	
<image>	    
	    <read filename="test.jpg" />	   
	    <resize geometry="200x200>" />	
	    <write filename="test_200.jpg" />
</image>

在配置文件的相应参数处加了处理符号,运行。
conjure test.msl

查看运行目录,一切正常,用尺寸小于200的文件测试,没有问题,一切正常。看来真是windows命令解析出了问题,用配置文件,可能自己内部处理,反而没有了问题。
分享到:
评论

相关推荐

    Java图片处理工具ImageMagick

    Java图片处理工具ImageMagick是一个强大的跨平台图形处理库,它允许开发人员在Java应用程序中进行复杂的图像操作,包括但不限于转换、编辑、合成图像以及处理大量格式的图像文件。ImageMagick是由C语言编写的,但...

    用ImageMagick命令行处理图片

    ImageMagick是一款强大的开源图像处理工具,它支持在命令行环境下进行各种图像操作,包括转换、缩放、旋转、添加文字、加边框以及合成图片等。ImageMagick的便捷之处在于其命令行界面,这使得它在批量处理、自动化...

    ImageMagick-- 图片处理

    4. **服务器端处理**:在服务器端,可以使用ImageMagick处理用户上传的图片,比如自动调整大小、添加水印等。 5. **图像分析**:在人工智能和机器学习领域,ImageMagick可以作为预处理步骤,对图像进行标准化和格式...

    Java图片处理解决方案:ImageMagick快速入门教程.docx

    Java 图片处理解决方案:ImageMagick 快速入门教程 Java 图片处理解决方案中,...ImageMagick 是一个功能强大且灵活的图片处理解决方案,可以实现各种图片处理效果,并且可以与 Java 集成使用,实现自动化图片处理。

    imageMagick给图片加字,windows批处理

    使用ImageMagick给图片在指定位置加文字,可以实现P图软件一样的效果。加上for循环语句,可以实现批量给图片加文字。 关于ImageMagick,是一款免费的命令行图像处理软件,支持windows,linux,Mac OS多平台,下载...

    ImageMagick图片批量处理

    Version: ImageMagick 6.7.6-7 2012-04-20 Q16 http://www.imagemagick.org Copyright: Copyright (C) 1999-2012 ImageMagick Studio LLC Features: OpenMP Usage: convert.exe [options ...] file [ [options ......

    ImageMagick java图片处理工具

    ImageMagick是一个免费的创建、编辑、...ImageMagick是免费软件:全部源码开放,可以自由使用,复制,修改,发布,它遵守GPL许可协议,可以运行于大多数的操作系统,ImageMagick的大多数功能的使用都来源于命令行工具。

    图片处理神器ImageMagick-6.9.3-7-Q16-x86-dll及对应的php扩展

    ImageMagick是一个免费的创建、编辑、...ImageMagick是免费软件:全部源码开放,可以自由使用,复制,修改,发布,它遵守GPL许可协议,可以运行于大多数的操作系统,ImageMagick的大多数功能的使用都来源于命令行工具。

    python使用moviepy时需要用到的库imagemagick

    它使用`ffmpeg`作为后端处理视频,而`imagemagick`则主要用于处理静态图片,特别是在批量转换和图像合成中。 在安装`moviepy`后,如果你尝试执行涉及图像转换的操作,可能会收到一条错误消息,提示需要`imagemagick...

    图片压缩工具ImageMagick

    ImageMagick是一款强大的开源图像处理工具,主要用于创建、编辑、合成和转换各种图像格式。它由C语言编写,以其高效和轻量级的特性而受到广泛赞誉,不会占用过多的系统资源,尤其在处理大量图像时表现优秀。这款工具...

    ImageMagick 强大的图片转换资源

    3. **使用ImageMagick进行图片处理**: - 命令行界面:ImageMagick主要通过命令行工具如`convert`来操作,用户可以编写简单的脚本批量处理大量图像。 - API集成:ImageMagick提供了C、C++、Python、PHP等多种语言...

    PDF文件转换ImageMagick图片处理

    图像处理工具可用来处理PDF文件时进行主要是图像处理!本人通过Python调用它进行PDF转换图片使用!工具地址:https://gitee.com/lmay/pdf_transform

    java,使用 phantomjs 生成网页截图,并用im4java生成缩略图,ImageMagick处理图片

    使用 phantomjs 和 im4java 生成网页缩略图,切图用的是ImageMagick,附送im4java调用ImageMagick处理图片代码,包括剪切、调整大小、调整到指定比例大小不足部分补白边。包含 phantomjs 包,不包含ImageMagick。

    在 Linux 中使用 ImageMagick 命令行操作图像文件.docx

    3. 使用 ImageMagick 可以批量处理大量图像文件。 4. 在使用 ImageMagick 之前,需要先安装 ImageMagick 软件。 5. ImageMagick 可以安装在 Linux、Mac OS X、Windows 系统中。 ImageMagick 是一个功能强大的图像...

    ImageMagick7.0.8 win64 16安装包下载。使用moviepy抛ImageMagick异常问题解决

    ImageMagick-7.0.8-56-Q16-x64-dll.rar是ImageMagick7.0.8的windows 64位操作系统的安装程序,解压执行即可安装。...ImageMagick利用多个计算线程来提高性能,并且可以读取,处理或写入兆,千兆或兆像素图像大小。

    iOS基于ImageMagick的图片压缩<不支持模拟器>

    1、ImageMagick跨平台图片处理框架 2、ImageMagick已打包为iOS静态库 3、项目中如何导入ImageMagick框架 4、一句代码调用压缩函数,代码实例如下: [[WZMQualityHandle shareHandle] compressImage:path quality:0.5...

    ImageMagick(图片编辑器)v6.8.9免费绿色版支持创建、编辑、合成图片

    ImageMagick是一个免费的创建、编辑、...ImageMagick是免费软件:全部源码开放,可以自由使用,复制,修改,发布,它遵守GPL许可协议,可以运行于大多数的操作系统,ImageMagick的大多数功能的使用都来源于命令行工具。

    修改图片 hash 值1

    本文将详细介绍如何使用 ImageMagick 工具修改图片的哈希值,并对图片进行颜色修改和其他处理。同时,还将介绍如何在 Xcode 项目中使用 Pod 和 ChaosTool 工具来实现垃圾代码添加和混淆小图标。 一、ImageMagick ...

    java结合imageMagick实现图片渲染合成编辑.zip

    java结合imageMagick实现图片渲染合成编辑,源码附送安装文件学习文档。

    ImageMagick使用手册-英文原版

    ### ImageMagick 使用手册知识点概览 #### 一、ImageMagick简介 ImageMagick是一款功能强大的开源软件工具集,用于创建、编辑或合成位图图像。它可以在图像上执行的操作包括转换颜色空间、应用模糊、锐化、噪点、...

Global site tag (gtag.js) - Google Analytics