imagemagick - 在imagemagick上使用附加时2个图像之间的黑线
问题描述
我有两个文件;
- 1.jpg = 14000x2800 像素
- 2.jpg = 2800x128 像素
我使用以下命令:
...\convert.exe -auto-orient -quality 100 -append "1.jpg" "2.jpg" "out.jpg"
目标是将图像在垂直轴上合并在一起,效果很好,但现在我需要在图像之间添加一条水平黑线(线的长度应该是最大的文件长度,即从左到右的意思)。
有没有办法在没有第二个命令的情况下做到这一点?
使用 MSPaint 技能更容易描述
解决方案
这是一种方法:
magick 1.jpg 2.jpg -size "%[fx:u.w>v.w?u.w:v.w]x10" xc:black -swap 2,1 -append result.png
那说...加载1.jpg
和2.jpg
。将我们接下来创建的画布的宽度定义为“ 1.jpg
(称为u
)和2.jpg
(称为)中较宽的那个v
”乘以 10 像素高。创建一个该大小的黑色画布。现在交换顺序,使我们刚刚创建的画布位于两个图像之间。附加所有 3 张图像并保存。
这为您提供了其中之一,具体取决于您首先加载哪个:
如果您希望较窄图像旁边未填充的白色背景区域为洋红色,请使用:
magick -background magenta 1.jpg 2.jpg -size "%[fx:u.w>v.w?u.w:v.w]x10" xc:black -swap 2,1 -append result.png
关键词:ImageMagick,图像处理,更宽,最宽,更高,最高,匹配现有图像宽度,匹配高度。
推荐阅读
- java - Java:无法理解 newInstance() 和 getSuperClass() 类的方法是如何工作的
- sparql - SPARQL:如何从 dbpedia 检索所有犬种及其所有信息框数据?
- excel - 使用数组向表中添加新行 - 关于公式的问题
- .net - 如何投射 Vector128
进入 Vector128 在.NET 中? - android - Kotlin:等待 Async 调用完成,然后为 var 赋值,然后返回
- azure-devops - 根据 azure devops 上的参数运行任务
- go - 如何在 uber/zap 记录器中动态更改日志级别
- video - 使用ffmpeg随机裁剪带有时间变量(t)的视频?
- regex - 正则表达式匹配字母数字字符,只允许下划线出现在中间
- django-urls - 实际上,Django 中 urls.py 中 URL 模式的评估顺序是什么?