imagemagick - 如何将图像列表中的图像调整为相同大小
问题描述
我想使用 ImageMagick 将蒙版应用于图像。但由于图像和蒙版的大小不同,我想拉伸/缩放蒙版以适合图像。
通常输入图像是 2000x500px,但也可以是 1000x500px 或其他,并且遮罩是 400x200px。
因此,如果我知道输入图像始终为 2000x500px,我可以这样做:
# Resize all images in the list to 2000x500
convert inputfile.png mask.png -resize 2000x500\! \
-compose over -composite \
outputfile.png
或者
# Resize only the mask to 2000x500
convert inputfile.png \
\( mask.png -resize 2000x500\! \) \
-compose over -composite \
outputfile.png
但我的问题是我不知道输入文件的大小!那么如何将蒙版调整为与列表中第一张图像相同的大小?
解决方案
使用 ImageMagick,您可以使用“-distort SRT”的缩放功能调整蒙版的大小以匹配输入图像的尺寸。一个示例命令可能看起来像这样......
convert input.png mask.png \
-set option:distort:viewport %[fx:u.w]x%[fx:u.h] \
-distort SRT "0,0 %[fx:u.w/s.w],%[fx:u.h/s.h] 0 0,0" \
-composite result.png
这会将视口设置为输入图像的尺寸,然后缩放两个图像以适合该视口。当然,输入图像大小不会改变,因为它被缩放为 1/1。
推荐阅读
- c# - 使用 C# 中的 NEST 库调用 elasticsearch 时,如何将条件逻辑添加到 linq 语句?
- mysql - 如何使 DB 查询 MINUS 与 Laravel 查询生成器一起使用
- python - Python读取电子邮件附加文件名
- c# - 如何使用 Azure Function 项目运行 EF Core 迁移?
- java - 实施 'com.hold1:keyboardheightprovider:0.0.9'
- android - 在应用程序之间共享 OkHttpClient 的实例
- python - 如何根据 Pandas 中的奇数/偶数日期创建布尔列?
- r - 对于抓取数据,您如何导航到您创建的链接?那么,如何从新页面中抓取数据?
- react-native - 找出 React Native 项目中的哪些部分或代码导致来自 android profiler 的大内存问题
- angular - Angular 12 和 source-map-explorer:Source-map-explorer 显示 16% 块的“无源”