6
6
(define (apply-t-o-p-logo-effect img
14
(let* ((width (car (gimp-drawable-width logo-layer)))
15
(height (car (gimp-drawable-height logo-layer)))
16
(logo-layer-mask (car (gimp-layer-create-mask logo-layer ADD-BLACK-MASK)))
17
(sparkle-layer (car (gimp-layer-new img width height RGBA-IMAGE "Sparkle" 100 NORMAL-MODE)))
18
(shadow-layer (car (gimp-layer-new img width height RGBA-IMAGE "Shadow" 90 ADDITION-MODE)))
19
(bg-layer (car (gimp-layer-new img width height RGB-IMAGE "Background" 100 NORMAL-MODE)))
21
(white '(255 255 255)))
15
(width (car (gimp-drawable-width logo-layer)))
16
(height (car (gimp-drawable-height logo-layer)))
17
(logo-layer-mask (car (gimp-layer-create-mask logo-layer ADD-BLACK-MASK)))
18
(sparkle-layer (car (gimp-layer-new img width height RGBA-IMAGE "Sparkle" 100 NORMAL-MODE)))
19
(shadow-layer (car (gimp-layer-new img width height RGBA-IMAGE "Shadow" 90 ADDITION-MODE)))
20
(bg-layer (car (gimp-layer-new img width height RGB-IMAGE "Background" 100 NORMAL-MODE)))
22
(white '(255 255 255))
23
25
(gimp-context-push)
51
53
(gimp-selection-invert img)
52
54
(gimp-edit-clear sparkle-layer)
53
55
(if (= edge-only TRUE)
55
(gimp-selection-load selection)
56
(gimp-selection-shrink img (/ edge-size 2.0))
57
(gimp-edit-clear sparkle-layer)
58
(gimp-selection-load selection)
59
(gimp-selection-grow img (/ edge-size 2.0))
60
(gimp-selection-invert img)))
57
(gimp-selection-load selection)
58
(gimp-selection-shrink img (/ edge-size 2.0))
59
(gimp-edit-clear sparkle-layer)
60
(gimp-selection-load selection)
61
(gimp-selection-grow img (/ edge-size 2.0))
62
(gimp-selection-invert img)))
61
63
(gimp-context-set-foreground '(0 0 0))
62
64
(gimp-context-set-background '(255 255 255))
63
65
(gimp-context-set-brush "Circle Fuzzy (11)")
73
75
(gimp-drawable-set-visible logo-layer 0)
74
76
(gimp-image-set-active-layer img sparkle-layer)
79
83
(define (script-fu-t-o-p-logo-alpha img
88
92
(gimp-image-undo-group-start img)
89
93
(apply-t-o-p-logo-effect img logo-layer b-size hit-rate
90
edge-size edge-only base-color bg-color)
94
edge-size edge-only base-color bg-color)
91
95
(gimp-image-undo-group-end img)
92
(gimp-displays-flush)))
94
100
(script-fu-register "script-fu-t-o-p-logo-alpha"
96
"Trace of Particles Effect"
97
"Shuji Narazaki (narazaki@InetQ.or.jp)"
102
SF-DRAWABLE "Drawable" 0
103
SF-ADJUSTMENT _"Border size (pixels)" '(20 1 200 1 10 0 1)
104
SF-ADJUSTMENT _"Hit rate" '(0.2 0 1 .01 .01 2 0)
105
SF-ADJUSTMENT _"Edge width" '(2 0 128 1 1 0 0)
106
SF-TOGGLE _"Edge only" FALSE
107
SF-COLOR _"Base color" '(0 40 0)
108
SF-COLOR _"Background color" '(255 255 255))
101
_"_Particle Trace..."
102
_"Add a Trace of Particles effect to the selected region (or alpha)"
103
"Shuji Narazaki (narazaki@InetQ.or.jp)"
108
SF-DRAWABLE "Drawable" 0
109
SF-ADJUSTMENT _"Border size (pixels)" '(20 1 200 1 10 0 1)
110
SF-ADJUSTMENT _"Hit rate" '(0.2 0 1 .01 .01 2 0)
111
SF-ADJUSTMENT _"Edge width" '(2 0 128 1 1 0 0)
112
SF-TOGGLE _"Edge only" FALSE
113
SF-COLOR _"Base color" '(0 40 0)
114
SF-COLOR _"Background color" "white"
110
117
(script-fu-menu-register "script-fu-t-o-p-logo-alpha"
111
_"<Image>/Script-Fu/Alpha to Logo")
118
"<Image>/Filters/Alpha to Logo")
114
121
(define (script-fu-t-o-p-logo text
122
129
(let* ((img (car (gimp-image-new 256 256 RGB)))
124
(text-layer (car (gimp-text-fontname img -1 0 0 text (* border 2) TRUE size PIXELS fontname))))
131
(text-layer (car (gimp-text-fontname img -1 0 0 text (* border 2) TRUE size PIXELS fontname))))
125
132
(gimp-image-undo-disable img)
126
(gimp-drawable-set-name text-layer text)
127
133
(apply-t-o-p-logo-effect img text-layer border hit-rate
128
edge-size edge-only base-color bg-color)
134
edge-size edge-only base-color bg-color)
129
135
(gimp-image-undo-enable img)
130
(gimp-display-new img)))
136
(gimp-display-new img)
132
140
(script-fu-register "script-fu-t-o-p-logo"
133
_"_Particle Trace..."
134
"Trace of Particles Effect"
135
"Shuji Narazaki (narazaki@InetQ.or.jp)"
139
SF-STRING _"Text" "The GIMP"
140
SF-ADJUSTMENT _"Font size (pixels)" '(100 1 1000 1 10 0 1)
141
SF-FONT _"Font" "Becker"
142
SF-ADJUSTMENT _"Hit rate" '(0.2 0 1 .01 .01 2 0)
143
SF-ADJUSTMENT _"Edge width" '(2 0 128 1 1 0 0)
144
SF-TOGGLE _"Edge only" FALSE
145
SF-COLOR _"Base color" '(0 40 0)
146
SF-COLOR _"Background color" '(255 255 255))
141
_"_Particle Trace..."
142
_"Create a logo using a Trace Of Particles effect"
143
"Shuji Narazaki (narazaki@InetQ.or.jp)"
147
SF-STRING _"Text" "GIMP"
148
SF-ADJUSTMENT _"Font size (pixels)" '(100 1 1000 1 10 0 1)
149
SF-FONT _"Font" "Becker"
150
SF-ADJUSTMENT _"Hit rate" '(0.2 0 1 .01 .01 2 0)
151
SF-ADJUSTMENT _"Edge width" '(2 0 128 1 1 0 0)
152
SF-TOGGLE _"Edge only" FALSE
153
SF-COLOR _"Base color" '(0 40 0)
154
SF-COLOR _"Background color" "white"
148
157
(script-fu-menu-register "script-fu-t-o-p-logo"
149
_"<Toolbox>/Xtns/Script-Fu/Logos")
158
"<Toolbox>/Xtns/Logos")