Adonj Adonj wrote: > > I'm using gimp2.4.7 in windows XP. I copied a script-fu plugin I found to my > C:\Program Files\GIMP-2.0\lib\gimp\2.0\plug-ins, which should > copy a layer mask to multiple layers or apply a layer mask to multiple > layers. > I get an error each time I make an attempt to use it, which states: > "Error: cons: needs 2 argument(s)" > I'm not familiar with the script. Could there be a simple solution to that? > Here is the script: > > ; This program is free software; you can redistribute it and/or modify > ; it under the terms of the GNU General Public License as published by > ; the Free Software Foundation; either version 2 of the License, or > ; (at your option) any later version. > ; > ; This program is distributed in the hope that it will be useful, > ; but WITHOUT ANY WARRANTY; without even the implied warranty of > ; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the > ; GNU General Public License for more details. > (define (script-fu-copy-mask-to-layers image drawable) > (define (visible-layers img) > (let* ( > (all-layers (gimp-image-get-layers img)) > (i (car all-layers)) > (viewable ()) > (tmp FALSE)) > (set! all-layers (cadr all-layers)) > (while (> i 0) > (set! tmp (car (gimp-drawable-get-visible (aref > all-layers (- i 1))))) > (if (= tmp TRUE) > (set! viewable (append viewable (cons (aref all-layers > (- i 1)))))) > (set! i (- i 1))) > viewable)) > (let* ( > (active-layer (car (gimp-image-get-active-layer image))) > (source-layer) > (source-mask) > (layers) > (mask)) > (set! layers (visible-layers image)) > (gimp-image-undo-group-start image) > (set! source-layer (car (gimp-layer-new-from-drawable > active-layer image))) > (gimp-image-add-layer image source-layer -1) > (set! source-mask (car (gimp-layer-get-mask source-layer))) > (if (= source-mask -1) > (begin > (set! source-mask (car (gimp-layer-create-mask > source-layer ADD-COPY-MASK))) > (gimp-layer-add-mask source-layer source-mask))) > (while (car layers) > (if (= (car (gimp-layer-get-mask (car layers))) -1) > (if (= (car (gimp-drawable-has-alpha (car layers))) 1) > (set! mask (car (gimp-layer-add-mask (car layers) > source-mask))))) > (set! layers (cdr layers))) > (gimp-image-remove-layer image source-layer) > (gimp-image-undo-group-end image) > (gimp-displays-flush))) > (script-fu-register "script-fu-copy-mask-to-layers" > "/Script-Fu/_Copy mask" > "Copy the mask from the current layer to all visible layers" > "Saul Goode" > "Saul Goode" > "6/14/2006" > "" > SF-IMAGE "Image" 0 > SF-DRAWABLE "Drawable" 0 > ) > Isn't that a script rather a plug-in? If so it should reside in the scripts folder... But this is gust a guess. I am not familiar with script-fu eithe :(
Peter > _________________________________________________________________ > > _______________________________________________ > Gimp-user mailing list > Gimp-user@lists.XCF.Berkeley.EDU > https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-user > -- http://receptibg.com - рецепти, готварство и хранене, менюта, статии, идеи и полезни съвети ------- Boryana & Peter Kostovi, web design & webdevelopment home site: http://bgwebdeveloper.com _______________________________________________ Gimp-user mailing list Gimp-user@lists.XCF.Berkeley.EDU https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-user