【发布时间】:2016-12-05 08:42:24
【问题描述】:
此脚本在 if 语句处失败,并显示“错误:(:1)>:参数 2 必须为:数字”,为什么?
(define x 1500)
(if(> x (gimp-image-width image))
(set! x (gimp-image-width image))
)
对于 GIMP 中使用的 Scheme 版本有什么好的参考吗?
【问题讨论】:
此脚本在 if 语句处失败,并显示“错误:(:1)>:参数 2 必须为:数字”,为什么?
(define x 1500)
(if(> x (gimp-image-width image))
(set! x (gimp-image-width image))
)
对于 GIMP 中使用的 Scheme 版本有什么好的参考吗?
【问题讨论】:
当您在 script-fu 控制台中尝试时,gimp-image-width 返回一个列表而不是数字:
(gimp-image-width 1)
(400)
所以你必须提取列表的元素:
(define x 1500)
(if(> x (car (gimp-image-width 1)))
(set! x (gimp-image-width 1))
)
附带说明,如果您开始编写 Gimp 脚本,使用 Python 会容易得多:
width=min(1500,image.width)
【讨论】: