自今年年初以来,我一直在使用gimp2.8。 最重要的是,我告诉你我不是英国人。 所以如果你不知道我想问你什么, 不要犹豫,向我询问详情。 我会尽量解释为易于理解。
让我解释一下我的问题。 我想创建一个像notebooke纸一样的图像, 而且我认为如果画线部分很容易 是自动化的。 为了做到这一点,我决定使用名为gimp的函数 '辫形-RECT选'并指定小高度值。
我谷歌搜索并写了一个方案文件, 但是当我从gimp的Script-Fu菜单中运行它时,
执行FU01-multi-rect-select时出错:
错误:(:1)
gimp-rect-select
的参数数量无效我希望你能看到我的第一个剧本 - 福和 指出涉及错误的地方。
对我来说,定义了我的自定义函数 它有8个参数,而不是9个。
(define (FU01-multi-rect-select
image
drawable
x1
y1
w
h
p-offset
p-repeat
)
;definition of variables
(let*
(
(X nil)
(Y nil)
(width nil)
(height nil)
(offset nil)
(repeat nil)
;are they below necessary?
(theLayer nil)
(theImage nil)
)
;(gimp-context-push )
(gimp-image-undo-group-start image)
;(set! X (string->number x1))
;(set! Y (string->number y1))
;(set! width (string->number w))
;(set! height (string->number h))
;(set! offset (string->number p-offset))
;(set! repeat (string->number p-repeat))
(set! X x1)
(set! Y y1)
(set! width w)
(set! height h)
(set! offset p-offset)
(set! repeat p-repeat)
(gimp-image-set-active-layer image drawable)
(set! theLayer
(car (gimp-image-get-active-layer image) )
)
; select rectangle and after that,
; add it to current selection
; multiple times that is specified with 'repeat'
(while (> repeat 0)
(gimp-rect-select image X Y width height
CHANNEL-OP-ADD FALSE 0 0)
(set! Y (+ Y height offset))
(set! repeat (- repeat 1))
)
(gimp-image-undo-group-end image)
) ; end of let sentences
)
(script-fu-register "FU01-multi-rect-select"
"<Image>/Script-Fu/Select/multi rect select"
"add a rect selection to current selection multiple times\
each time a rect is selected it is moved\
in y axis by the value of offset"
"Masaaki Fujioka"
"copy right 2014 Masaaki Fujioka"
"August 3 2014"
"*"
SF-IMAGE "SF-IMAGE" 0
SF-DRAWABLE "SF-DRAWABLE" 0
SF-VALUE "start x" "0"
SF-VALUE "start y" "0"
SF-VALUE "width" "0"
SF-VALUE "height" "0"
SF-VALUE "offset" "0"
SF-VALUE "repeat" "0"
答案 0 :(得分:1)
就像错误消息所说的那样,gimp-rect-select调用还有一个额外的参数 - 如果在&#34;模式&#34;之后检查过程浏览器上的调用规范。参数应该有一个布尔值来告诉你是否要使用羽化,另一个数字来告诉羽化量。您传递的是两个整数,而不是只需要一个数字。
此外,请注意此通话标记为&#34;已弃用&#34; - 这意味着虽然它仍然适用于gimp-2.8,但由于一系列原因,你应该调用gimp-image-select-rectangle
而不是这个。 (请注意,该调用的参数不同)。