图像处理 – 将自定义ImageMagick(GraphicsMagick)包络失真应用于文本

我想使用
ImageMagick生成这样的文本:

我将font作为TTF文件并知道如何使用未失真的文本生成图像.我遇到的麻烦就是应用失真.

我想使用的“信封”看起来像这样:

我一直在阅读关于扭曲的ImageMagick’s examples,但似乎无法弄清楚正确的命令.

请注意,这不是弧形.

最佳答案 这是一项相当复杂的任务:ImageMagick具有一些内置的失真效果,但没有一个类似于你需要的效果.

为了实现您的目标,您可以尝试定义自定义失真:例如使用图像映射(特别是绝对失真查找映射,更多信息here).

基本上,您创建了一个黑/白渐变图像(地图),用于定义特定效果应如何应用于图像的每个像素.

棘手的部分是正确生成图像映射:您可以手动或使用ImageMagick.

例如,从ImageMagick docs获取的此命令会创建一个球形失真贴图:

  convert -size 100x100 xc:  -channel R \
          -fx 'yy=(j+.5)/h-.5; (i/w-.5)/(sqrt(1-4*yy^2))+.5' \
          -separate  +channel     sphere_lut.png

这是结果图像:

一旦你创建了失真贴图,你可以将它应用到你的图像,例如:

convert input.png lut_mask.png -fx 'p{ v*w, j }' output.png
点赞