GraphicsMagick (GM) 在不改变比例的情况下调整为正方形并添加背景

GraphicsMagick (GM) resize into square without changing ratio and add background

我正在尝试让 GraphicsMagick 将我的各种图像调整为标准正方形。输入始终是可变的 - 垂直、水平图像、不同尺寸等。

我想基本上有: - 白色背景 canvas @ 600px x 600px - 图片位于 canvas @ 500px x 500px

的中心

我试过 so many from the docs 但我无法让它正常工作。

这是我目前所做的 (JavaScript):

gm(content)
  .autoOrient()
  .resize(600, 600)
  .gravity('Center')
  .extent([600, 600])
  .background('#FFFFFF')
  .flatten();

它只是显示出正确的宽度,但保持了比例,所以对于一个矩形,它的宽度为 600 像素,高度为 240 像素(因为它保持了比例)。

感谢任何帮助!

我的问题的解决方案很简单,我将 extent 设置为一个数组。最终解决方案:

gm(content)
  .autoOrient()
  .resize(550, 550)
  .gravity('Center')
  .background('#FFFFFF')
  .extent(600, 600)
  .flatten();