将一张图像作为“尺寸模板”并使用它来调整另一张图像的大小

问题描述 投票:0回答:1

我想知道此类任务的语法:我有一个文件,它是“尺寸模板” - 它有自己的宽x高。 IM 应读取此尺寸并仅使用它们来调整其他文件的大小。

目前,我有这样的命令工作:

magick template.jpg image-to-resize.jpg -resize "x%[fx:int(h/2)]" second-image-resized.jpg

但是调用此命令会输出两个图像 - 第一个和第二个图像作为输入 - 调整大小。如何告诉“fx”它应该从第一个输入图像读取尺寸?

我在 Ubuntu 22.04 上使用 IM v7.1.1。

编辑:与此同时,我在 GitHub 上的 IM 讨论板上提出了同样的问题。我从 snibgo 得到了很好的解决方案:https://github.com/ImageMagick/ImageMagick/discussions/7090#discussioncomment-8395013

imagemagick
1个回答
0
投票

此命令首先读取模板图像和输入图像。然后使用 FX 表达式调整它们的大小,然后在输出结果之前删除模板图像。

magick template.jpg image.jpg -resize "x%[fx:u.h/2]" -delete 0 resized.jpg

表达式中的“u.h”指定使用第一张图像(模板)的高度进行计算。

© www.soinside.com 2019 - 2024. All rights reserved.