root/branches/gajim_0.11.1/scripts/dev/multisplit.scm

Revision 4160, 1.8 kB (checked in by asterix, 3 years ago)

move scripts that have nothing to do in release in a dev folder

Line 
1; multisplit: splits up a mavica multi (sprites in one layer) into layers
2; so you make make from png/jpg sprite a gif animation
3; put me in ~/.gimp-ver/scripts and find me script-fu>animators>MultiSplit
4
5(define (script-fu-multisplit multimg
6                              drawable
7                              horizontal
8                              vertical
9                              delay)
10 (let* (
11        (width 0)
12        (height 0)
13        (img 0)
14        (layerNum 0)
15        (hpos 0)
16        (vpos 0)
17        (layer 0)
18        (floatingLayer 0)
19       )
20
21  (set! width (/ (car (gimp-image-width multimg)) horizontal))
22  (set! height (/ (car (gimp-image-height multimg)) vertical))
23  (set! img (car (gimp-image-new width height RGB)))
24
25  (set! vpos 0)
26  (while (< vpos vertical)
27    (set! hpos 0)
28    (while (< hpos horizontal) 
29      (set! layerNum (+ layerNum 1))
30      (set! layer (car (gimp-layer-new img width height RGB
31                   (string-append "Frame" delay "(replace)")
32                   100 NORMAL)))
33
34      (gimp-layer-add-alpha layer)
35      (gimp-drawable-fill layer TRANSPARENT-FILL)
36      (gimp-image-add-layer img layer -1)
37
38      (gimp-rect-select multimg
39        (* hpos width) (* vpos height)
40        width height
41        REPLACE FALSE 0)
42
43      (gimp-edit-copy drawable)
44
45      (gimp-selection-all img)
46
47      (set! floatingLayer (car (gimp-edit-paste layer 0)))
48      (gimp-floating-sel-anchor floatingLayer)
49
50      (gimp-selection-none img)
51      (gimp-selection-none multimg)
52     
53      (set! hpos (+ hpos 1))
54    )
55    (set! vpos (+ vpos 1))
56  )
57
58  (gimp-display-new img)
59 )
60)
61
62(script-fu-register "script-fu-multisplit" 
63                    "<Image>/Script-Fu/Animators/MultiSplit"
64                    "Split an image into layers"
65                    "Rick Miller (Rick.Miller@Linux.org)"
66                    "Rick Miller"
67                    "05/19/2000"
68                    "RGB RGBA GRAY GRAYA"
69                    SF-IMAGE "Image" 0
70                    SF-DRAWABLE "Drawable" 0
71                    SF-VALUE "Horizontal Slices" "3"
72                    SF-VALUE "Vertical Slices" "3"
73                    SF-VALUE "Default Delay" "\"250ms\"")
Note: See TracBrowser for help on using the browser.