home *** CD-ROM | disk | FTP | other *** search
/ ftp.sunet.sepub/pictures / 2014.11.ftp.sunet.se-pictures.tar / ftp.sunet.se / pub / pictures / ACiD-artpacks / programs / unix / editors / gimp-plugins-unstable-0_99_23_tar.gz / gimp-plugins-unstable-0_99_23_tar / gimp-plugins-unstable-0.99.23 / gimptcl / frags / 2.tcl < prev    next >
Text File  |  1998-02-20  |  6KB  |  192 lines

  1. set DebugLevel 0
  2. set size 120
  3. set font "ParkAvenue"
  4. set text_pattern "Fibers"
  5. set bg_color {255 255 255}
  6.  
  7. proc gen-bg {img} {
  8.     set width [gimp-image-width $img]
  9.     set height [gimp-image-height $img]
  10.  
  11.     set b1 [gimp-layer-new $img $width $height RGBA_IMAGE "Blend 1" \
  12.              50 NORMAL]
  13.     set old_fg [gimp-palette-get-foreground]
  14.     set old_bg [gimp-palette-get-background]
  15.  
  16.     gimp-palette-set-foreground {47 17 216}
  17.     gimp-palette-set-background {55 214 23}
  18.     
  19.     gimp-blend $img $b1 FG_BG_RGB NORMAL CONICAL_SYMMETRIC 100 \
  20.     0 95 95 40 45 
  21.     gimp-blend $img $b1 FG_BG_RGB NORMAL CONICAL_SYMMETRIC 50 \
  22.     0 280 180 310 205
  23.     gimp-image-add-layer $img $b1 1
  24.  
  25.     set b2 [gimp-layer-new $img $width $height RGBA_IMAGE "Blend 2" \
  26.              100 NORMAL]
  27.     gimp-palette-set-foreground {247 229 37}
  28.     gimp-palette-set-background {244 24 31}
  29.     gimp-blend $img $b2 FG_BG_RGB NORMAL CONICAL_SYMMETRIC 100 \
  30.     0 270 95 300 220
  31.     gimp-blend $img $b2 FG_BG_RGB NORMAL CONICAL_SYMMETRIC 50 \
  32.     0 105 180 58 205
  33.     gimp-image-add-layer $img $b2 1
  34.  
  35.     foreach layer [lindex [gimp-image-get-layers $img] 1] {
  36.     if {$layer != $b1 && $layer != $b2} {
  37.         gimp-layer-set-visible $layer 0
  38.     }
  39.     }
  40.     
  41.     set d [gimp-image-merge-visible-layers $img 0]
  42.  
  43.     gimp-image-set-active-layer $img $d
  44.     plug-in-c-astretch $img $d
  45.     plug-in-mosaic $img $d 15 15 1.1 0.0 60 0.5 1 1 1 1 0
  46.  
  47.     gimp-palette-set-foreground $old_fg
  48.     gimp-palette-set-background $old_bg
  49.  
  50.     return $d
  51. }
  52.  
  53. proc add-text {img text} {
  54.     global size bg_color text_pattern font 
  55.  
  56.     set f_size [expr $size * 0.075]
  57.     set b_size [expr $size * 0.1]
  58.     set b_size_2 [expr $size * 0.05]
  59.     set ts_size [expr $b_size_2 - 3]
  60.     set ds_size [expr $size * 0.05]
  61.     set old_w [gimp-image-width $img]
  62.     set old_h [gimp-image-height $img]
  63.  
  64.     set text_layer [gimp-text $img -1 0 0 $text $b_size TRUE $size PIXELS "*" $font "*" "*" "*" "*"]
  65.  
  66.     set old_fg [gimp-palette-get-foreground]
  67.     set old_bg [gimp-palette-get-background]
  68.  
  69.     set width [gimp-drawable-width $text_layer]
  70.     set height [gimp-drawable-height $text_layer]
  71.     gimp-image-resize $img $width $height 0 0
  72.  
  73.     set text_shadow_layer [gimp-layer-new $img $width $height RGBA_IMAGE "Text Shadow" 100 MULTIPLY]
  74.     set tsl_layer_mask [gimp-layer-create-mask $text_shadow_layer BLACK_MASK]
  75.  
  76.     set drop_shadow_layer [gimp-layer-new $img $width $height RGBA_IMAGE "Drop Shadow" 100 MULTIPLY]
  77.     set dsl_layer_mask [gimp-layer-create-mask $drop_shadow_layer BLACK_MASK]
  78.     
  79.     gimp-image-add-layer $img $drop_shadow_layer 1
  80.     gimp-image-add-layer $img $text_shadow_layer 0
  81.  
  82.     gimp-selection-all $img
  83.     gimp-patterns-set-pattern $text_pattern
  84.     gimp-layer-set-preserve-trans $text_layer TRUE
  85.     gimp-bucket-fill $img $text_layer PATTERN_BUCKET_FILL NORMAL 100 0 FALSE 0 0
  86.     gimp-selection-none $img
  87.     gimp-edit-clear $img $text_shadow_layer
  88.     gimp-edit-clear $img $drop_shadow_layer
  89.     gimp-palette-set-background $bg_color
  90.     
  91.     gimp-selection-layer-alpha $img $text_layer
  92.     gimp-image-add-layer-mask $img $text_shadow_layer $tsl_layer_mask
  93.     gimp-palette-set-background {255 255 255}
  94.     gimp-edit-fill $img $tsl_layer_mask
  95.     gimp-selection-feather $img $f_size
  96.     gimp-palette-set-background {23 23 23}
  97.     gimp-edit-fill $img $drop_shadow_layer
  98.     gimp-palette-set-background {0 0 0}
  99.     gimp-edit-fill $img $text_shadow_layer
  100.     gimp-palette-set-foreground {255 255 255}
  101.     gimp-blend $img $text_shadow_layer FG_BG_RGB NORMAL SHAPEBURST_ANGULAR 100 0 0 0 1 1
  102.     gimp-selection-none $img
  103.     gimp-layer-translate $text_layer -$b_size_2 -$b_size_2
  104.     gimp-layer-translate $text_shadow_layer -$ts_size -$ts_size
  105.     gimp-layer-translate $drop_shadow_layer $ds_size $ds_size
  106.     gimp-image-add-layer-mask $img $drop_shadow_layer $dsl_layer_mask
  107.     gimp-palette-set-background {255 255 255}
  108.     gimp-edit-fill $img $dsl_layer_mask
  109.     gimp-image-remove-layer-mask $img $drop_shadow_layer APPLY
  110.  
  111.     gimp-palette-set-foreground $old_fg
  112.     gimp-palette-set-background $old_bg
  113.  
  114.     foreach layer [lindex [gimp-image-get-layers $img] 1] {
  115.     if {$layer != $text_layer
  116.         && $layer != $text_shadow_layer
  117.         && $layer != $drop_shadow_layer} {
  118.         gimp-layer-set-visible $layer 0
  119.     }
  120.     }
  121.     set d [gimp-image-merge-visible-layers $img 0]
  122.  
  123.     gimp-image-resize $img $old_w $old_h 0 0
  124.     return $d
  125.  
  126. }
  127.  
  128.  
  129. proc run {} {
  130.     set bg_w 352
  131.     set bg_h 240
  132.  
  133.     set img [gimp-image-new 352 240 RGB]
  134.     set bg_d [gen-bg $img]
  135.     set t_d [add-text $img "Eric L. Hernes, esq."]
  136.     gimp-layer-set-visible $bg_d 0
  137.     gimp-layer-set-visible $t_d 0
  138.  
  139.     set frame 0
  140.     set tx_w [gimp-drawable-width $t_d]
  141.     set tx_h [gimp-drawable-height $t_d]
  142.     set y [expr $bg_h - $tx_h]
  143.  
  144. #    for {set x $bg_w;set frame 0} {$x + $tx_w > 0} {incr x -1;incr frame} 
  145. #    for {set x [expr $bg_w - 584];set frame 583} {$x + $tx_w > 0} {incr x -3;incr frame} 
  146.     set ppf 2
  147.     set frame 0
  148. #    {$x + $tx_w > 0} 
  149.     set frame 412
  150.     set total [expr ($bg_w + $tx_w) / $ppf]
  151.     set eframe $total
  152.     set eframe 413
  153.     for {set x [expr $bg_w - [expr $frame * $ppf]]} {$frame < $eframe} {
  154.     incr x -$ppf;incr frame} {
  155.     set bg [gimp-layer-copy $bg_d 0]
  156.     plug-in-whirl $img $bg [expr -10 * $frame]
  157.     set bg_c [gimp-layer-copy $bg 0]
  158.     gimp-layer-delete $bg
  159.     gimp-image-add-layer $img $bg_c 0
  160.     set t_c [gimp-layer-copy $t_d 0]
  161.     gimp-image-add-layer $img $t_c 0
  162.     gimp-layer-set-visible $bg_c 1
  163.     gimp-layer-set-visible $t_c 1
  164.     gimp-layer-set-offsets $t_c $x $y
  165.     set d [gimp-image-merge-visible-layers $img 2]
  166.     set fn [format "/src/t/%04d.jpg" $frame]
  167.     puts "$fn : $x $y \[$frame / $total\]"
  168.     file-jpeg-save $img $d $fn 100 0
  169.     gimp-layer-set-visible $d 0
  170.     gimp-layer-delete $d
  171.     }
  172. }
  173.  
  174. proc w {i d} {
  175.     set r [plug-in-whirl $i $d -25]
  176.     gimp-displays-flush
  177.     return $r
  178. }
  179.  
  180. proc m {i d} {
  181.     set r [plug-in-mosaic $i $d 15 15 1.1 0.0 60 0.5 1 1 1 1 0]
  182.     gimp-displays-flush
  183.     return $r
  184. }
  185.  
  186. proc r {} {
  187.     set i [gimp-image-new 256 256 RGB]
  188.     set d [gen-bg $i]
  189.     set tx [add-text $i "Eric L. Hernes"]
  190.     gimp-display-new $i
  191.     return [list $i $d $tx]
  192. }