我的目标是使用用于 gimp 的 python-fu 库以统一的方式缩放图像。这意味着指定宽度/高度应该足以进行缩放。Gimp 应该相应地改变高度/宽度。
在 Gimp GUI 中,它使用标记的切换进行设置:
我正在使用以下行来缩放图像
pdb.gimp_layer_scale(visibleLayer, 435, 100, True)
将图层缩放到指定的宽度和高度。
无法按照上面指定的方式统一执行此操作。
使用以下代码计算要缩放到的目标高度并且它有效。
def calculateHeight(logoLayer):
if logoLayer.width < TARGET_LAYER_WIDTH:
return round(logoLayer.height * (TARGET_LAYER_WIDTH * 1.0 / logoLayer.width))
return logoLayer.height
为了保持相同的纵横比,你只需做一些数学运算:
newHeight = oldHeight * ( newWidth / oldWidth )
或慢动作
newWidth / oldWidth