本指南将向您展示如何使用Linux命令行操作图像。
您将了解如何根据文件大小和比例调整图像大小。您还将学习如何在多种文件类型之间进行转换,例如从JPG到PNG或GIF到TIF。
转换命令
convert命令用于转换图像。格式如下:
转换输入选项输入文件输出选项输出文件。
如何调整图像大小
如果您要在网页上包含图像并且希望它是特定大小,那么您可以使用一些CSS来调整图像大小。
实际上,虽然首先将图像上传为正确的大小并将其插入页面,但实际上更好。
这当然只是您可能想要调整图像大小的一个示例。
要调整图像大小,请使用以下命令
convert imagename.jpg -resize dimensions newimagename.jpg
例如,要将图像转换为800x600,您将使用以下命令:
convert imagename.jpg -resize 800x600 newimagename.jpg
如果通过转换为指定的尺寸,纵横比将变得混乱,则图像将调整为最接近的比例。
要强制转换为确切大小,请使用以下命令:
转换imagename.jpg -resize 800x600! newimagename.jpg
您不必指定高度和宽度作为resize命令的一部分。
例如,如果您希望宽度为800而您不关心高度,则可以使用以下命令:
convert imagename.jpg -resize 800 newimagename.jpg
要将图像调整为指定高度,请使用以下命令:
转换imagename,jpg -resize x600 newimagename.jpg
如何从一种图像格式转换为另一种图像格式
如果您有JPG文件并且希望将其转换为PNG,那么您将使用以下命令:
convert image.jpg image.png
您可以组合许多不同的文件格式。例如
convert image.png image.gif
转换image.jpg image.bmp
转换image.gif image.tif
如何调整图像的文件大小
有许多方法可以更改图像的物理文件大小。
- 更改纵横比(使其更小)
- 更改文件格式
- 更改压缩质量
减小图像的大小将使文件更小。此外,使用包含JPG等压缩的文件格式可以减少物理文件的大小。
最后调整质量将使物理文件更小。
前两节介绍了如何调整大小和文件类型。要压缩图像,请尝试以下命令:
convert imagename.jpg -quality 90 newimage.jpg
质量指定为百分比。百分比越低,输出文件越小,但显然最终输出质量不是很好。
如何旋转图像
如果您以纵向拍摄了照片,但希望它是风景图像,则可以使用以下命令旋转图像:
convert imagename.jpg -rotate 90 newimage.jpg
您可以指定任何旋转角度。
例如,试试这个:
convert imagename.jpg -rotate 45 newimage.jpg
转换命令行选项
有许多命令行选项可以与convert命令一起使用,如下所示:
选项按命令行顺序处理。您在命令行上指定的任何选项对后面的图像集保持有效,直到该集由任何选项的外观终止或-noop。某些选项仅影响图像的解码,而其他选项仅影响编码。后者可以出现在最后一组输入图像之后。
有关每个选项的更详细说明,请参阅 ImageMagick的 .
-邻接 | 将图像连接到单个多图像文件中 |
-affine | 绘制变换矩阵 |
-antialias | 删除像素别名 |
-附加 | 附加一组图像 |
-平均 | 平均一组图像 |
-背景 | 背景颜色 |
-模糊 X | 用高斯算子模糊图像 |
-边界 X | 用彩色边框包围图像 |
-边框颜色 | 边框颜色 |
-框 | 设置注释边界框的颜色 |
-cache | 像素缓存可用的兆字节内存 |
-渠道 | 渠道的类型 |
-木炭 | 模拟木炭画 |
-劈 X {+ - } {+ - } {%} | 从图像内部删除像素 |
-夹 | 应用剪切路径(如果存在) |
-合并 | 合并一系列图像 |
-colorize | 用笔颜色着色图像 |
-colors | 图像中的首选颜色数 |
-色彩空间 | 颜色空间的类型 |
-评论 | 用注释注释图像 |
-撰写 | 图像组成的类型 |
-压缩 | 图像压缩的类型 |
-对比 | 增强或降低图像对比度 |
-作物 X {+ - } {+ - } {%} | 裁剪图像的首选大小和位置 |
-周期 | 按金额替换图像色彩图 |
-debug | 启用调试打印输出 |
-deconstruct | 将图像序列分解为组成部分 |
-延迟 <1/100ths of a second> | 暂停后显示下一个图像 |
-密度 X | 图像像素的垂直和水平分辨率 |
-深度 | 图像的深度 |
-despeckle | 减少图像中的斑点 |
-显示 | 指定要联系的X服务器 |
-dispose | GIF处理方法 |
-dither | 将Floyd / Steinberg误差扩散应用于图像 |
-画 | 使用一个或多个图形基元注释图像 |
-边缘 | 检测图像中的边缘 |
-emboss | 压印图像 |
-encoding | 指定字体编码 |
-endian | 指定输出图像的字节顺序(MSB或LSB) |
-提高 | 应用数字滤波器来增强噪声图像 |
-equalize | 对图像执行直方图均衡 |
-填 | 填充图形基元时使用的颜色 |
-过滤 | 调整图像大小时使用此类型的过滤器 |
-flatten | 压平一系列图像 |
-flip | 创造一个“镜像” |
-flop | 创造一个“镜像” |
-font | 使用文本注释图像时使用此字体 |
-帧 X ++ | 用装饰性边框包围图像 |
-fuzz {%} | 这个距离内的颜色被认为是相等的 |
-gamma | 伽马校正水平 |
-gaussian X | 用高斯算子模糊图像 |
-几何 x {+ - } {+ - } {%} {@} {!} {<} {>} | 图像窗口的首选大小和位置。 |
-重力 | 方向原始在注释图像时倾向于。 |
-救命 | 打印使用说明 |
-implode | 破坏关于中心的图像像素 |
-意图 | 在管理图像颜色时使用此类渲染意图 |
-交错 | 隔行扫描方案的类型 |
-标签 | 为图像指定标签 |
-水平 | 调整图像对比度 |
-list | 列表的类型 |
-环 | 将Netscape循环扩展添加到您的GIF动画中 |
-地图 | 从此图像中选择一组特定的颜色 |
-面具 | 指定剪贴蒙版 |
-matte | 如果图像有一个,则存储遮罩通道 |
-median | 对图像应用中值滤波器 |
-调制 | 改变图像的亮度,饱和度和色调 |
-单色 | 将图像转换为黑白图像 |
-变形 | 变形图像序列 |
-镶嵌 | 从图像序列创建马赛克 |
-否定 | 用其互补色替换每个像素 |
-噪声 | 添加或减少图像中的噪点 |
-noop | NOOP(无选项) |
-normalize | 转换图像以跨越所有颜色值 |
-不透明 | 将此颜色更改为图像中的笔颜色 |
-页 X {+ - } {+ - } {!} {%} {<} {>} | 图像画布的大小和位置 |
-涂料 | 模拟一幅油画 |
-钢笔 | 指定绘图操作的笔颜色 |
性平 | 有效地确定图像特征 |
-pointsize | Postscript,OPTION1或TrueType字体的pointize |
-预习 | 图像预览类型 |
-处理 | 处理一系列图像 |
-轮廓 | 将ICM,IPTC或通用配置文件添加到映像 |
-质量 | JPEG / MIFF / PNG压缩级别 |
-提高 X | 使图像边缘变亮或变暗 |
-区域 X {+ - } {+ - } | 将选项应用于图像的一部分 |
调整大小 X {%} {@} {!} {<} {>} | 调整图像大小 |
-滚 {+-}{+-} | 垂直或水平滚动图像 |
-rotate {<}{>} | 将Paeth图像旋转应用于图像 |
-样品 | 像素采样缩放图像 |
-sampling_factor X | JPEG或MPEG-2编码器和YUV解码器/编码器使用的采样因子。 |
-规模 | 缩放图像。 |
-现场 | 设置场景编号 |
-种子 | 伪随机数发生器种子值 |
-分割 X | 分割图像 |
-shade X | 使用远距离光源遮挡图像 |
-sharpen X | 锐化图像 |
-刮胡子 X | 从图像边缘削减像素 |
-shear X | 沿X轴或Y轴剪切图像 |
-尺寸 X {+偏移} | 图像的宽度和高度 |
-solarize | 否定所有高于阈值水平的像素 |
-传播 | 以随机量移位图像像素 |
-行程 | 抚摸图形基元时要使用的颜色 |
-strokewidth | 设置笔划宽度 |
-漩涡 | 围绕中心旋转图像像素 |
-质地 | 要平铺到图像背景上的纹理的名称 |
-阈 | 阈值图像 |
-瓦 | 填充图形基元时平铺图像 |
-转变 | 转换图像 |
-透明 | 使这种颜色在图像中透明 |
-treedepth | 树的深度为减色算法 |
-修剪 | 修剪图像 |
-类型 | 图像类型 |
-单位 | 图像分辨率的类型 |
-unsharp X | 使用非锐化遮罩操作符锐化图像 |
-use_pixmap | 使用像素图 |
-verbose | 打印有关图像的详细信息 |
-视图 | FlashPix查看参数 |
-波 X | 沿着正弦波改变图像 |
-写 | 写一个图像序列 转换,复合 |
有关更多信息,请阅读convert命令的手册页。