1

我一直在尝试为 GIMP 2.6+ 编写一个 script-fu 脚本,它使用内置的 script-fu 方法之一,即script-fu-add-bevel方法。我的问题是,每当我在控制台或脚本中调用它时,我都会得到:

Error: Procedure execution of gimp-drawable-type-with-alpha failed on invalid input
arguments: Procedure 'gimp-drawable-type-with-alpha' has been called with an
invalid ID for argument 'drawable'. Most likely a plug-in is trying to work on a layer that
doesn't exist any longer. 

这真的很奇怪,因为通过gimp-image-get-active-drawable使用我的图像 ID 作为参数调用我可以清楚地看到我传递给 script-fu 方法的图层 ID 存在。调用时脚本gimp-drawable-type-with-alpha出错,但我可以在控制台中使用相同的 ID 调用此方法而不会出错。我该如何解决这个问题?

4

1 回答 1

1

这个论坛帖子中,我了解到在调用 script-fu 方法时,您不应该传入run-mode参数。这是在幕后完成的,如果您为该值传递任何内容,它将被解释为第二个参数!这意味着您发送的每个参数都将关闭一个参数,脚本崩溃只是时间问题。

所以从另一个 script-fu 调用script-fu-add-bevel看起来像这样:

(script-fu-add-bevel img layer bevel-width FALSE FALSE)
于 2015-08-27T07:20:25.587 回答