【问题标题】:Imagemagick command geometry not workingImagemagick命令几何不起作用
【发布时间】:2017-05-23 07:28:25
【问题描述】:

我有一个尺寸为 350x500 的 image1.jpg 和另一个带有阴影等渐变效果的 image2.png ( 350x150 )。我需要将阴影应用到 image1.jpg 的底部。但是几何对我不起作用。

convert -extent 600x700\! image1.jpg \( image2.png -geometry +0+500 \) -composite final.png

我希望几何将图像定位在我给出的点,如果我是对的,几何对我不起作用。

【问题讨论】:

    标签: imagemagick imagemagick-convert


    【解决方案1】:

    不确定您要达到的目标,但是否接近:

    convert xc:red[350x500] -extent 600x700\! xc:blue[350x150] -geometry +80+300 -composite result.png
    

    也许您的 PNG 文件中有一些剩余的分页信息,您可以在加载后立即添加 +repage 将其删除:

    convert ... ... image.png +repage ...
    

    你可以这样识别它:

    【讨论】:

    • 转换 xc:red[350x500] -extent 600x700\! -geometry +100+100 xc:blue[350x150] -geometry +80+300 -composite result.png --- 我正在尝试为第一张图片设置几何形状,但它不起作用。
    【解决方案2】:

    也许您想要的是在 ImageMagick 中使用 -gravity 和 -geometry 的组合。例如

    convert -size 600x700 xc:white xc:red[350x500] -geometry +50+50 -composite xc:blue[350x150] -gravity south -geometry +0+20 -composite -bordercolor black -border 1 result1.png
    

    在这里,我创建了尺寸为 600x700 的白色图像,并在 x 和 y 向下和右侧合成了 50 像素的红色图像。然后我将重力设置为南,并将蓝色图像从底部向上合成 20 像素。我添加了黑色边框,以便更容易看到图像边界。

    或者,您可以使用负值向 -extent 添加偏移量,以相对于红色移动白色。这样您就不必创建第一个白色图像并将红色合成到它上面。

    convert xc:red[350x500] -extent "600x700-50-50" xc:blue[350x150] -gravity south -geometry +0+20 -composite -bordercolor black -border 1 result2.png
    

    但不幸的是,范围上的偏移似乎修剪了红色图像(高度)。所以我认为这不是一个有效的解决方案。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-03-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-09-28
      • 2020-10-01
      相关资源
      最近更新 更多