【问题标题】:Scale image layer uniformly using python-fu in Gimp在 Gimp 中使用 python-fu 统一缩放图像层
【发布时间】:2017-06-03 09:25:58
【问题描述】:

我的目标是使用用于 gimp 的 python-fu 库以统一的方式缩放图像。这意味着指定宽度/高度应该足以进行缩放。 Gimp 应该相应地改变高度/宽度。

在 Gimp GUI 中,它使用标记的切换进行设置:

我正在使用以下行来缩放图像

pdb.gimp_layer_scale(visibleLayer, 435, 100, True)

将图层缩放到指定的宽度和高度。

无法按照上面指定的方式统一执行此操作。

【问题讨论】:

    标签: python gimp script-fu python-fu gimpfu


    【解决方案1】:

    使用以下代码计算要缩放到的目标高度并且它有效。

    def calculateHeight(logoLayer):
            if logoLayer.width < TARGET_LAYER_WIDTH:
                return round(logoLayer.height * (TARGET_LAYER_WIDTH * 1.0 / logoLayer.width))
            return logoLayer.height
    

    【讨论】:

      【解决方案2】:

      要保持相同的纵横比,您只需做一些数学运算:

      newHeight = oldHeight * ( newWidth / oldWidth ) 
      

      或慢动作

      • 当你定义一个新的宽度时,这会定义一个等于newWidth / oldWidth的放大系数
      • 然后使用上面的公式将该放大系数应用于高度。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2023-03-17
        • 2015-07-04
        • 1970-01-01
        相关资源
        最近更新 更多