2016-07-30 55 views
2

此脚本在if语句失败时出现“错误:(:1)>:参数2必须是:编号”,为什么?将图像宽度与编号进行比较失败

(define x 1500) 

(if(> x (gimp-image-width image)) 
(set! x (gimp-image-width image)) 
) 

在GIMP中使用的Scheme版本有没有很好的参考?

回答

2

当你尝试在脚本中福控制台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)