mogrify 带标题(imagemagick 或 graphicsmagick)

Tal*_*boy 2 imagemagick graphicsmagick imagemagick-convert

我正在尝试对图像执行多个操作(调整大小、裁剪、在底部添加一些空白区域)。

然后我试图在那个空白区域添加一个标题。

我想使用mogrify这样我可以编辑现有文件,而不是创建一个新文件(它将是大量的)。

这给了我一个错误,我不太确定如何做到这一点。不过它确实适用convert

magick mogrify -resize 300x -crop 300x200+0+50 -extent 300x290 input.jpg -size 300x90 -gravity SouthWest -font "Arial" -pointsize 24 -fill black caption:'dis some really long shit that goes on 3 lines onmg how will it ever the' -composite -quality 100
Run Code Online (Sandbox Code Playgroud)

Bon*_*nzo 5

magick 是 V7 中转换的新名称。大概是为了避免 Windows 内置转换程序的问题

注意:在内存中将标题创建为单独的图像并将其连接到原始图像。

旧的转换程序显示了一种使用 php 在变量中使用图像的方法

$size = getimagesize( $input ); 
$cmd = " $input ( -size {$size[0]}x30". 
" -background black -fill white". 
" -pointsize 16 -gravity center". 
" caption:\"Caption\" -flatten ) -append "; 
exec("convert $cmd caption_size.jpg");
Run Code Online (Sandbox Code Playgroud)

使用 magick 的示例 - 注意 -size 中的快捷方式,可以将图像大小保存到变量中。一次性使用 Windows

magick "input.jpeg" ( -size "fx:w"x30 -background black -fill white -pointsize 30 -gravity center caption:"Caption" -flatten ) -append "output.jpg"
Run Code Online (Sandbox Code Playgroud)

示例输出