ImageMagick 转换:将文本放在书籍封面上

ImageMagick 转换:将文本放在书籍封面上

我正在尝试通过 ImageMagick 制作电子书封面,以便在它运行后纳入更大的项目中。

我想稍后讨论几何和重力,但目前我有两个相关的图像:

  1. 1000x1600 JPEG 背景,我通过 GIMP 将其调亮到没有黑色或近黑色像素的程度,并且

  2. 800x70 PNG 作者姓名,其中单段文本保存为透明背景上的黑色文本。

(目前,800x70 图像是由 Pango 生成的,并且可能严格来说除了合成图像之外还有更多选项;我希望可以通过 Pango 创建标题和作者姓名并绕过图像合成。但是,我想知道除了(而不是代替)图像合成的基本调用之外,还可以将带有 alpha 的 PNG 放置在 JPEG 之上,并且能够使用和控制其位置-gravity-geometry

我正在尝试ImageMagick 的分层示例,并尝试了以下几种变体:

convert -size 1000x1600 -geometry +0+0 \
  -composite background.jpg -gravity center -geometry +0+0 \
  -composite author.png -gravity center -geometry +0+0 \
  result.jpg

我从中得到的是一张 800x70 的纯黑色图像,我希望这与从 PNG 中提取透明度(如作者姓名)制作成 JPEG 时得到的图像一致。

我应该怎么做才能(至少现在)得到一个与背景相等的 1000x1600 结果图像,并且在某个可理解的位置放置作者姓名?

谢谢

答案1

两个问题:

  • 此操作不需要转换命令。

  • 您的图像在命令中是向后的(第一张图像是覆盖在第二张图像上的图像,即作者,然后是背景)。

这应该会给出你想要的结果:

composite author.png -gravity center -geometry +0+0 \
background.jpg -gravity center -geometry +0+0 result.jpg

可以说,您甚至可能不需要第二个重力/几何组合:

composite author.png -gravity center -geometry +0+0 background.jpg result.jpg

相关内容