Top > ScriptFuClass > Step5 äºéç® å®è·µçãªã¹ã¯ãªãã
äžéç®ã§ã¯ãã¹ã¯ãªãããæžãäžãããŸã§ã®åºæ¬çãªæµãã説æããŸãããããããå®è·µçãªã¹ã¯ãªãããå®éã«æžãããšãããšãããã€ãèããªããã°ãªããªãäºããã¯ããã¯ãå¿ èŠã«ãªã£ãŠããŸããããã§ã¯ Script-Fu ãããã«ã¹ãããã¢ãããããããã®ããããæžãããŠããŸãã 5.1 ç»åäŸååã¹ã¯ãªããã§èæ
®ãã¹ãããš
ç¬ç«å®è¡åã¹ã¯ãªããã§ã¯ãèªåã§æåããç»åãäœã£ãŠããã®ã§åææ¡ä»¶ã¯èªåã§æ±ºããããšãã§ããŸããããã«å¯Ÿããç»åäŸååã¹ã¯ãªãããå®è¡ããæãå®è¡ããæã®ç¶æ ã«ã€ããŠãèæ ®ããªããã°ãªããªãå ŽåããããŸãã ã©ã®ãããªããšã«ã€ããŠæ³šæããªããã°ãªããªããã«ã€ããŠããªã¹ãã¢ããããŠã¿ãŸãã
éåžžãããã¯å šãŠãèæ ®ããå¿ èŠãç¡ããããããŸããããèªåãä»äœãããã¹ã¯ãªããã®ç®çãããèãããããã®ããšã念é ã«çœ®ããªããéçºãé²ããããã«ããŸãããã 5.2 å
¥åããã¯ã¹ã®åŒæ°å
ã¹ã¯ãªããäžã§ãã¿ãŒã³ãã°ã©ããŒã·ã§ã³ã䜿ãããå Žåãã¹ã¯ãªãããå®è¡ãããšãã«ãŠãŒã¶ãŒãå ¥åããã¯ã¹ã§ãã¿ãŒã³ãã°ã©ããŒã·ã§ã³ãéžæã§ããããã«ããªããã°ãããŸããããã®å ¥åããã¯ã¹ã«äœ¿çšã§ããåŒæ°åã®èª¬æãããŠãããŸãã 5.2.1 å
¥åããã¯ã¹ã«äœ¿çšã§ããåŒæ°å
å ¥åããã¯ã¹ã«äœ¿çšã§ããåŒæ°ãšããŠã以äžã®è¡šã«ãããã®ã䜿ããŸããåã ã®è©³ãã説æã¯ãã®åŸã§ããŸããããããå¿ èŠã«å¿ããŠçšããããšã§ããŠãŒã¶ãŒã«ãã€ã¢ãã°ã§æå®ãããããšãã§ããããã«ãªããŸãã 衚: Script-Fu ã§äœ¿çšã§ããåŒæ°å
ãããã®äžããå¿ èŠãªå ¥åããã¯ã¹ãäœãåŒæ°åãéžãã§äœ¿çšããŸããå®éã«èªåã§å ¥åããã¯ã¹ãäœã£ãŠã¿ãã»ããåãããããã§ãããã 5.2.2 å
šãŠã®åŒæ°åã䜿ã£ãäŸ
å®éã«äžã§æããå šãŠã®åŒæ°åã䜿ã£ãã¹ã¯ãªãããäœã£ãŠã¿ãŸãããã®ã¹ã¯ãªããã®å®è¡çµæããã®ãã€ã¢ãã°ã§ããããã«ã¯å šãŠã®å ¥åããã¯ã¹ããããŸãã å šãŠã®å ¥åããã¯ã¹ãæã€ã¹ã¯ãªãã â»æ¬¡ã®ã¹ã¯ãªãããå®è¡ãããšãããã€ã¢ãã°ã§äœããã¡ã€ã«ãéžæããªãã£ãå Žåã«ã¯ script-fu.exe ãèœã¡ãäžå ·åããããŸã (Windows) (define (script-fu-all-inputs-box image drawable layer channel vectors color toggle value string filename dirname adjustment0 adjustment1 font pattern brush gradient option palette text enum display) (gimp-message "This is the input box test script!") ) (script-fu-register "script-fu-all-inputs-box" "All Inputs Box..." "Show all inputs box" "Iccii <iccii@hotmail.com>" "Iccii" "Jun, 2001/May, 2009" "" SF-IMAGE "SF-IMAGE" 0 SF-DRAWABLE "SF-DRAWABLE" 0 SF-LAYER "SF-LAYER" 0 SF-CHANNEL "SF-CHANNEL" 0 SF-VECTORS "SF-VECTORS" 0 SF-COLOR "SF-COLOR" '(255 255 255) SF-TOGGLE "SF-TOGGLE" FALSE SF-VALUE "SF-VALUE" "10" SF-STRING "SF-STRING" "The Gimp" SF-FILENAME "SF-FILENAME" "/FILENAME" SF-DIRNAME "SF-DIRNAME" "" SF-ADJUSTMENT "SF-ADJUSTMENT 0" '(256 1 1024 1 10 0 0) SF-ADJUSTMENT "SF-ADJUSTMENT 1" '(256 1 1024 1 10 0 1) SF-FONT "SF-FONT" "Sans" SF-PATTERN "SF-PATTERN" "Leopard" SF-BRUSH "SF-BRUSH" '("Circle (15)" 1.0 20 0) SF-GRADIENT "SF-GRADIENT" "Blue Green" SF-OPTION "SF-OPTION" '("Option1" "Option2" "Option3") SF-PALETTE "SF-PALETTE" "Blues" SF-TEXT "SF-TEXT" "Try input \n any texts" SF-ENUM "SF-ENUM" '("GimpGradientType" "linear") SF-DISPLAY "SF-DISPLAY" 0 ) (script-fu-menu-register "script-fu-all-inputs-box" "<Image>/Filters/Test") äžã® (gimp-message "This is the input box test script!") ã®è¡ãäžã® gimp-message åºåãšäº€æããŠã¹ã¯ãªãããå®è¡ãããšãå³äžã«ããããã«å ¥åããã¯ã¹ãå€åããããšãã«ã©ã®ãããªå€ãåãæž¡ãããšã«ãªãã®ãèŠãããšãã§ããŸããèå³ã®ãã人ã¯è²ã ãšå€åãããªãã詊ããŠã¿ãŠäžããããã©ã·åããã¿ãŒã³åãã°ã©ããŒã·ã§ã³åã確èªãããæã«äŸ¿å©ãããããŸããã (gimp-message (string-append "Image is " (number->string image) "\n" "Drawable is " (number->string drawable) "\n" "Layer is " (number->string layer) "\n" "Channel is " (number->string channel) "\n" "Vectors is " (number->string vectors) "\n" "Color is " "'(" (number->string (car color)) " " (number->string (cadr color)) " " (number->string (caddr color)) ")\n" "Toggle is " (if (equal? toggle TRUE) "TRUE\n" "FALSE\n") "Value is " (number->string value) "\"\n" "String is " "\"" string "\"\n" "Filename is " "\"" filename "\"\n" "Dirname is " "\"" dirname "\"\n" "Adjust0 is " (number->string adjustment0) "\n" "Adjust1 is " (number->string adjustment1) "\n" "Font is " "\"" font "\"\n" "Pattern is " "\"" pattern "\"\n" "Brush is " "'(" "\"" (list-ref brush 0) "\" " (number->string (list-ref brush 1)) " " (number->string (list-ref brush 2)) " " (number->string (list-ref brush 3)) ")\n" "Gradient is " "\"" gradient "\"\n" "Option is " (number->string option) "\n" "Palette is " "\"" palette "\"\n" "Text is " "\"" text "\"\n" "Enmu is " (number->string enum) "\n" "Display is " (number->string display) )) å®è¡çµæããšã©ãŒã¡ãã»ãŒãžãšããŠè¡šç€ºããããããšã©ãŒã³ã³ãœãŒã«ã®ãã€ã¢ãã°ã«è¡šç€ºãããŸãã 5.2.3 åã
ã®åŒæ°åã®èª¬æ
ããããã®åŒæ°åãäœãæå®ããããã®ãªã®ãã¯äžã®ãã€ã¢ãã°ãèŠãã°å€§äœåãããšæããŸãããã®äžã§ã¯ããããã®åŒæ°åã®èª¬æãšãåŒæ°åã«äŒŽãããŒã¿åã®èª¬æãããŸãã SF-IMAGE ããããããŠã³ãªã¹ããããŠãŒã¶ãŒã«ç»åãéžã°ããŸããçŸåšéããŠããç»åãç¡ãå Žåãnone ã«ãªããŸããéžæããç»å ID ãè¿ã£ãŠããŸãã
ç»å ID ã¯æŽæ°ã§ããæ®éã¯éžæããç»å ID ãã¹ã¯ãªãããæžãæç¹ã§å€ã£ãŠããããšã¯ãªãã®ã§ 0 ãšä»®æå®*2ããŠãããŸãã SF-DRAWABLE ãããæžããŠãããšãã¹ã¯ãªãããå®è¡ããæç¹ã§å©çšã§ããããã¢ãã«ããŠãŒã¶ãŒã«éžã°ããããããããŠã³ãªã¹ããçŸããŸããå©çšã§ããããã¢ãã«ãç¡ããã° "none" ãšã°ã¬ãŒã¢ãŠããããéžæã§ããªãããã«ãªããŸããéžæããããã¢ãã«ã® ID ãè¿ã£ãŠããŸãã
ããã¢ãã«ã® ID å€ãæå®ããŸããID å€ã¯äœæãããé çªã« Gimp ã«ãã£ãŠå²ãåœãŠããããããã¢ãã«ãèå¥ããããã®æŽæ°ã§ããããã¢ãã«ã¯ã¬ã€ã€ãŒãšã¬ã€ã€ãŒãã¹ã¯ãšãã£ã³ãã«ã®ç·ç§°ã§ããéåžžã¯ããã¢ãã«ã®çªå·ãã¹ã¯ãªãããæžããæç¹ã§å€æããŠããããšã¯ç¡ãã®ã§ãããã¢ãã« ID 㯠0 ãšä»®æå®ããŠãããŸãã SF-LAYER ãããæžããŠãããšãã¹ã¯ãªãããå®è¡ããæç¹ã§å©çšã§ããããã¢ãã«ããŠãŒã¶ãŒã«éžã°ããããããããŠã³ãªã¹ããçŸããŸããå©çšã§ããããã¢ãã«ãç¡ããã° "none" ãšã°ã¬ãŒã¢ãŠããããéžæã§ããªãããã«ãªããŸããéžæããããã¢ãã«ã® ID ãè¿ã£ãŠããŸãã
ã¬ã€ã€ãŒã® ID å€ãæå®ããŸããID å€ã¯äœæãããé çªã« Gimp ã«ãã£ãŠå²ãåœãŠããããã¬ã€ã€ãŒãèå¥ããããã®æŽæ°ã§ããã¬ã€ã€ãŒã«ã¬ã€ã€ãŒãã¹ã¯ãããå Žåãã¬ã€ã€ãŒãã¬ã€ã€ãŒãã¹ã¯ã®ã¢ã¯ãã£ãã«ãªã£ãŠããæ¹ãæž¡ãããŸããéåžžã¯ã¬ã€ã€ãŒã®çªå·ãã¹ã¯ãªãããæžããæç¹ã§å€æããŠããããšã¯ç¡ãã®ã§ãã¬ã€ã€ãŒ ID 㯠0 ãšä»®æå®ããŠãããŸãã SF-CHANNEL ãããæžããŠãããšãã¹ã¯ãªãããå®è¡ããæç¹ã§å©çšã§ãããã£ã³ãã«ããŠãŒã¶ãŒã«éžã°ããããããããŠã³ãªã¹ããçŸããŸããå©çšã§ãããã£ã³ãã«ãç¡ããã° "none" ãšã°ã¬ãŒã¢ãŠããããéžæã§ããªãããã«ãªããŸããéžæãããã£ã³ãã«ã® ID ãè¿ã£ãŠããŸãã
ãã£ã³ãã«ã® ID å€ãæå®ããŸããID å€ã¯äœæãããé çªã« Gimp ã«ãã£ãŠå²ãåœãŠãããããã£ã³ãã«ãèå¥ããããã®æŽæ°ã§ãããã£ã³ãã«ã«ã¯äºçŽãã£ã³ãã«ãé€ããæ®ãã®ãã£ã³ãã«ãå ¥ããŸããéåžžã¯ãã£ã³ãã«ã®çªå·ãã¹ã¯ãªãããæžããæç¹ã§å€æããŠããããšã¯ç¡ãã®ã§ããã£ã³ãã« ID 㯠0 ãšä»®æå®ããŠãããŸãã SF-VECTORS ãããæžããŠãããšãã¹ã¯ãªãããå®è¡ããæç¹ã§å©çšã§ãããã¯ãã«ããŠãŒã¶ãŒã«éžã°ããããããããŠã³ãªã¹ããçŸããŸããå©çšã§ãããã¯ãã«ãç¡ããã° "none" ãã°ã¬ãŒã¢ãŠããããéžæã§ããªãããã«ãªããŸããéžæãããã¯ãã«ã® ID ãè¿ã£ãŠããŸãã
ãã¯ãã«ã® ID ãæå®ããŸããID å€ã¯äœæãããé çªã« Gimp ã«ãã£ãŠå²ãåœãŠãããããã¯ãã«ãèå¥ããããã®æŽæ°ã§ããéåžžã¯ãã¯ãã«ã®çªå·ãã¹ã¯ãªãããæžããæç¹ã§å€æããŠããããšã¯ç¡ãã®ã§ããã¯ãã« ID 㯠0 ãšä»®æå®ããŠãããŸãã SF-COLOR è²ãã¿ã³ãæŒãããšã§ãŠãŒã¶ãŒã«è²éžæãã€ã¢ãã°ã§è²ãæå®ãããŸããéžãã è²ã®ãªã¹ããè¿ã£ãŠããŸãã
äžã€ã®æ°å€ã®èŠçŽ ãããªããªã¹ãã§ãèµ€/ç·/éãè¡šãæ°å€ããããã 0 ãã 255 ã®ç¯å²ã§æå®ããŸããäŸãã°èµ€è²ã®å Žå㯠'(0 255 255) ãšãªããŸãããŸã㯠CSS 衚èšã§è²ãæå®ããããšãã§ããŸãã SF-TOGGLE ãã§ãã¯ããã¯ã¹ãäœã£ãŠããŠãŒã¶ã«æå¹/ç¡å¹ã®éžæããããŸããçåœå€ãæ°å€ã§è¿ã£ãŠããŸãã0 ã§ããã°åœ (FALSE) ã§ããã以å€ã¯ç (TRUE) ãšè§£éãããŸãã
ããã©ã«ãã®çåœå€ããçã§ããã° TRUE ãããããã¯åœã§ããã° FALSE ã§æå®ããŸããTRUE ã®å Žåã¯ãã§ãã¯ããã¯ã¹ã«ãã§ãã¯ãå ¥ã£ãç¶æ ãšãªããŸãã SF-VALUE å€ãå ¥åããæ¬ãçŸããŸããããã«å ¥ããå€ã¯ãã®ãŸãŸã®åœ¢ã§çŽæ¥åŒæ°ã«å ¥ããããŸãã
å€ã§ããã°ãªãã§ãåŒæ°ã«çŽæ¥æž¡ãããšãã§ããŸã (å€åé åã OK)ãæã¯ããã§å šãŠãŸããªã£ãŠããããã§ãããæ°å€æå®ã®ããã« SF-ADJUSTMENT ãæ°ãã«äœãããŸããããã®ããä»ã¯ SF-VALUE ã®åºçªã¯ããŸããããŸããããäŸãã°ãªã¹ããåŒæ°ã«ããããšãã«ã¯ SF-VALUE ã䜿çšããŸãã SF-STRING æååãå ¥åããæ¬ãçŸããŸããããã«æ°å€ãå ¥åããŠãæååãšããŠåãæ±ãããŸããå ¥åããæååãè¿ã£ãŠããŸãã
ããã©ã«ãã®æååãå ¥ããŠãããŸããããã©ã«ããçç¥ ("") ããŠããããšãã§ããŸãã SF-ADJUSTMENT ããç¯å²å ã§æ°å€ãéžã°ããã¢ãžã£ã¹ã¿ãŒãäœããŸããã¢ãžã£ã¹ã¿ãŒã®çš®é¡ã«ã¯ãã¹ã©ã€ããŒãšã¹ãã³ããã¯ã¹ããããŸããã¹ãã³ããã¯ã¹ã®å Žåã¯ãã¹ãã³ãã¿ã³ãæŒãç¶ããŠæå€§å€ãè¶ ããå Žåã«æå°å€ã«ãªããŸããéãåæ§ã§ãã
ããã©ã«ãã®å€ã¯ã¢ãžã£ã¹ã¿ãŒã®åæå€ã§ããæå€§å€ãšæå°å€ã¯éžæã§ããæ°å€ã®ç¯å²ã§ãããšãã©ãæå°å€ã 0 ã«ããã®ã 1 ã«ããã®ããèæ ®ããªããã°ãªããªãå Žé¢ããããŸããã¹ãããå¹ å°ã¯ã¹ãã³ããã¯ã¹ã®ã¹ãã³ãã¿ã³ãæŒãããšãã®æ°å€ã®å€åéã®å€ã§ããã¹ãããå¹ å€§ã¯ã¹ã©ã€ããŒãé£ç¶ããŠåãããæã«äžåºŠã«å€åããéã§ããç²ŸåºŠã¯æå¹ãªå°æ°ç¹äœã§ã0 ãšããå Žåã¯æŽæ°ãã1 ãšããå Žå㯠0.1 ã®äœãã2 ãšããå Žå㯠0.01 ã®äœãããªã©ã®ããã«æå¹æ¡æ°ãæå®ããŸããã¢ãžã£ã¹ã¿ãŒã®çš®é¡ã¯ã0 ãšãããšã¹ã©ã€ããŒã«ã1 ãšãããšã¹ãã³ããã¯ã¹ã«ãªããŸãã SF-FONT ãŠãŒã¶ã«ãã©ã³ããæå®ãããŸããçŸåšã®ãã©ã³ãåã®é£ã®ãã¿ã³ãæŒããšããã©ã³ãéžæãã€ã¢ãã°ãéããŸããããã§æå®ãããã©ã³ããè¿ãããŸãã
æååã§ãã©ã³ããæå®ããŸãããã åã«ãã©ã³ãåãåãæž¡ãããŠããã ããªã®ã§ããã®æã«ãã©ã³ãã®å€§ãããéžãã§ã倧ããã¯å€æŽãããŸããã SF-PATTERN ãŠãŒã¶ãŒã«ãã¿ãŒã³ãéžæãããŸããé£ã®ãã¿ã³ãæŒããšãã¿ãŒã³éžæãã€ã¢ãã°ãçŸããŸããéžæãããã¿ãŒã³ã®ååãæååã§è¿ã£ãŠããŸãã
ãã¿ãŒã³åã¯æååã§ãããã¿ãŒã³åã¯ãã¿ãŒã³éžæãã€ã¢ãã°ããScript-Fu ã³ã³ãœãŒã«ã§ (gimp-context-get-pattern "") ãå ¥åãããšçŸåšã®ãã¿ãŒã³ã®æ å ±ãåŸãããŸãã SF-BRUSH ãŠãŒã¶ãŒã«ãã©ã·ãéžã°ããŸãããã©ã·ã®ååã¯ãã©ã·éžæãã€ã¢ãã°ã®äžéšã«åºãŠããåç§°ãšå¿ ãããäžèŽããããã§ã¯ãããŸãããçŸåšã®ãã©ã·ã®ååã調ã¹ãã«ã¯ (gimp-context-get-brush "") ã Script-Fu ã³ã³ãœãŒã«ã«å ¥åããŸãã
ãã©ã·ã®ãªã¹ãã®å é ã¯ãã©ã·ã®åå (æåå) ã§ãæ®ãã¯æ°å€ã§ããäžéæåºŠãééããã©ã·ã¢ãŒãã§ãã SF-GRADIENT ã°ã©ããŒã·ã§ã³ã®ãã¿ã³ãæŒãããšã§ãã°ã©ããŒã·ã§ã³éžæãã€ã¢ãã°ã§ã°ã©ããŒã·ã§ã³ããŠãŒã¶ãŒã«éžã°ããŸããéžæããã°ã©ããŒã·ã§ã³åãè¿ã£ãŠããŸãã
ã°ã©ããŒã·ã§ã³åã¯ã°ã©ããŒã·ã§ã³éžæãã€ã¢ãã°ã§åãããŸãã SF-FILENAME ãŠãŒã¶ãŒã«ãã¡ã€ã«ãæå®ãããŸãããã¡ã€ã«åã®é£ã®ãã¿ã³ãæŒããšãã¡ã€ã«éžæãã€ã¢ãã°ãéããŸããããã§ãã¡ã€ã«ãéžæãããšããã¡ã€ã«ãŸã§ã®ãã«ãã¹ãå«ããæååãè¿ãããŸãã
æååã§ãã¡ã€ã«ã®ååãæå®ããŸãããã¹ã "/" ã§åºåã£ãŠãã¡ã€ã«ãŸã§ã®ãã«ãã¹ãæžããŸããäŸãã° "/home/myname/picture.jpg" ãªã©ã§ãã Script-Fu äžã§åç §ã§ããç°å¢å€æ° gimp-data-directory ã«ã¯ãGimp ã®ããŒã¿ãå ¥ã£ãŠãããã£ã¬ã¯ããªã®å Žæãæååã§åããããŠããŸãããããå©çšããŠãæååãé£çµããã颿° string-append ã䜿ããæ¬¡ã®ããã«æžãããšãã§ããŸãã SF-FILENAME "Environment Map" (string-append "" gimp-data-directory "/scripts/beavis.jpg") SF-DIRNAME ãã£ã¬ã¯ããªãããã¯ãã©ã€ããéžã¶ããšãã§ããŸããéžæããŠããªãã£ãå Žåã¯å€ãè¿ããŸããã
ãã£ã¬ã¯ããªåã¯æååã§ãã SF-OPTION ããããããŠã³ãªã¹ãããäžã€ããŠãŒã¶ãŒã«éžã°ããŸããå é ããäœçªç®ã®èŠçŽ ãéžãã ã®ããšããæ°å€ãè¿ã£ãŠããŸãã
éžã°ããããªãã·ã§ã³ã®æ°ã ãèŠçŽ ã®æååããªã¹ãã§æžããŸããäžçªå é ã®èŠçŽ ãããã©ã«ãã®èŠçŽ ã«ãªããŸãã SF-PALETTE ãŠãŒã¶ãŒã«ãã¬ãããéžã°ããŸãã
ãã¬ããåã¯æååã§ãããã¬ããåã¯ãã¬ããéžæãã€ã¢ãã°ããScript-Fu ã³ã³ãœãŒã«ã§ (gimp-context-get-plaette "") ãå ¥åãããšçŸåšã®ãã¬ããã®ååãåŸãããŸãã SF-TEXT SF-STRING 㯠1 è¡ã ãå ¥åã§ããæååã§ããããSF-TEXT ã¯è€æ°è¡ã®ããã¹ãæãå ¥åããããšãã§ããŸãã
ããã¹ãã¯æååã§ããåæããã¹ãæã« \n ãå ¥ãããšãããã§æ¹è¡ãããŸãã SF-ENUM æå®ããåæåã§éžæã§ããå€ãéžã¶ã³ã³ãããã¯ã¹ã衚瀺ãããŸãã
ãªã¹ãã®äžã®åæååãšåæå€ã¯ããããæååã§ããåæå€ã¯ãã®åæåã®äžããåæå€ã«ãããäžã€ã®å€ã®ããã¯ããŒã ãæžããŸããã¹ã¯ãªãããåŒã³åºããšéžãã åæåã®å¯Ÿå¿ããå€ãè¿ã£ãŠããŸãã SF-DISPALY ãã£ã¹ãã¬ã€ãéžã³ãŸããäŸãã°ç»åãŠã£ã³ããŠãè€æ°ããå Žåã¯ãè€æ°ã®ãã£ã¹ãã¬ã€ãããããšã«ãªããŸãã
ãã£ã¹ãã¬ã€çªå·ã¯æŽæ°ã§ãã 5.3 ä»åã®ã¹ã¯ãªããã«ã€ããŠ
ä»åäœãã¹ã¯ãªããã¯ãPhotoshop ã§ãããšããã®ã¬ã€ã€ãŒå¹æã®ã¹ã¯ãªããã§ããããã¯ã¬ã€ã€ãŒã®äžéæé åã«å¯ŸããŠãããããã·ã£ããŠãã·ã£ã㊠(å åŽ)ãå 圩 (å€åŽ)ãå 圩 (å åŽ)ãããã«ãšãšã³ãã¹ãã®å¹æã远å ãããã®ã§ããå šãŠç»åäŸååã¹ã¯ãªããã§ãã ä»åã®ã¹ã¯ãªããã¯å®è·µç·šãšããããšã§ãScript-Fu ãæžãäžã§å®éã«å¿ èŠã«ãªãããšã¯ããçšåºŠææ¡ãããã®ãšã¿ãªããŠããã®ã§ãåã ã®éšåã«å¯ŸããŠããŸãé·ã説æã¯ããŸãããããåãããªããšãããåºãŠãããããããŸã§ã®å 容ã埩ç¿ããŠãããŠäžããã ã¬ã€ã€ãŒã®äžéæéšåãããšã«åŠçãè¡ããããä»åã®ã¹ã¯ãªããã®å®è¡åã«ã¯éæãªã¬ã€ã€ãŒãäœæããŠããã«äœãæžã蟌ãã§ãããŠäžããã 5.4 ããããã·ã£ããŠå¹æã®ã¹ã¯ãªãã
3 éç®ã«ã¯ããããã·ã£ããŠæåãäœãã¹ã¯ãªãããåãäžããŸãããããã§ã¯ã¬ã€ã€ãŒã®äžéæéšåããéæéšåã«ããããã·ã£ããŠãããã¹ã¯ãªãããäœããŸããäž¡è ã®éãã«ã€ããŠãããããã¡ããšææ¡ããŠãããŸãããã ããããã·ã£ããŠå¹æã¯æãåºæ¬çãªã¬ã€ã€ãŒå¹æã®äžã€ã§ãããã®ããæ¢ã« Gimp æšæºä»å±ã®ã¹ã¯ãªããã«ã¯ããããã·ã£ããŠã®ã¹ã¯ãªãããããã€ãå«ãŸããŠããŸãããããã®ã¹ã¯ãªãããšä»åã®ã¹ã¯ãªãããèŠæ¯ã¹ãŠã¿ãã®ãå匷ã«ãªããšæããŸããåãããšãããã«ãããã€ãã®æ¹æ³ãããããšã«æ°ãä»ãããšã§ãããã 5.4.1 ããããã·ã£ããŠã®ã¹ã¯ãªãã
;; ããããã·ã£ããŠã远å ããã¹ã¯ãªãã (define (script-fu-layer-effect-drop-shadow img ; ç»å layer ; ããã¢ãã« (ã¬ã€ã€ãŒ) shadow-color ; 圱ã®è² blur-radius ; 圱ã®ãŒããååŸ opacity ; 圱ã®äžéæåºŠ x-offset ; 圱㮠X ãªãã»ãã y-offset ; 圱㮠Y ãªãã»ãã ) (let* ( (width (car (gimp-drawable-width layer))) (height (car (gimp-drawable-height layer))) (shadow-layer (car (gimp-layer-new img width height RGBA-IMAGE "Drop Shadow" opacity MULTIPLY-MODE))) (shadow-mask (car (gimp-layer-create-mask shadow-layer BLACK-MASK))) ) ;; åŠçæºå (gimp-image-undo-group-start img) (gimp-context-push) (gimp-image-add-layer img shadow-layer -1) (gimp-image-add-layer-mask img shadow-layer shadow-mask) ;; ã·ã£ããŠã¬ã€ã€ãŒãã¹ã¯ã®äœæ (gimp-context-set-background shadow-color) (gimp-drawable-fill shadow-layer BG-IMAGE-FILL) (gimp-selection-layer-alpha layer) (gimp-edit-fill shadow-mask WHITE-IMAGE-FILL) (gimp-selection-none img) ;; ã·ã£ããŠã¬ã€ã€ãŒãã¹ã¯ãžã®å€æŽ (gimp-context-set-background '(0 0 0)) (gimp-channel-ops-offset shadow-mask FALSE OFFSET-BACKGROUND x-offset y-offset) (plug-in-gauss-iir2 1 img shadow-mask blur-radius blur-radius) ;; åŸåŠç (gimp-image-lower-layer img shadow-layer) (gimp-context-pop) (gimp-image-undo-group-end img) (gimp-displays-flush) ) ) (script-fu-register "script-fu-layer-effect-drop-shadow" "Drop Shadow..." "Create drop shadow on the layer with alpha" "Iccii <iccii@hotmail.com>" "Iccii" "Aug, 2001/May, 2009" "RGBA" SF-IMAGE "Image" 0 SF-DRAWABLE "Drawable" 0 SF-COLOR "Shadow color" '(0 0 0) SF-ADJUSTMENT "Shadow blur radius" '(10 1 100 1 10 0 0) SF-ADJUSTMENT "Drop shadow opacity" '(75 0 100 1 10 0 0) SF-ADJUSTMENT "Shadow X offset" '(5 -100 100 1 10 0 1) SF-ADJUSTMENT "Shadow Y offset" '(5 -100 100 1 10 0 1) ) (script-fu-menu-register "script-fu-layer-effect-drop-shadow" "<Image>/Filters/Layer Effect") 5.6 ã·ã£ããŠå
åŽå¹æã®ã¹ã¯ãªãã
å çšã¯äžéæéšåã®å€åŽã«åœ±ãèœãšããŠããŸããããæ¬¡ã¯äžéæéšåã®äžã«åœ±ãèœãšã广ã§ãã ã·ã£ããŠå åŽã®ã¹ã¯ãªãã ;; ã·ã£ãã¥(å åŽ) ã¹ã¯ãªãã (define (script-fu-layer-effect-inner-shadow img ; ç»å layer ; ããã¢ãã« (ã¬ã€ã€ãŒ) shadow-color ; 圱ã®è² blur-radius ; 圱ã®ãŒããååŸ opacity ; 圱ã®äžéæåºŠ x-offset ; 圱㮠X ãªãã»ãã y-offset ; 圱㮠Y ãªãã»ãã ) (let* ( (width (car (gimp-drawable-width layer))) (height (car (gimp-drawable-height layer))) (shadow-layer (car (gimp-layer-new img width height RGBA-IMAGE "Inner Shadow" opacity MULTIPLY-MODE))) (shadow-mask (car (gimp-layer-create-mask shadow-layer WHITE-MASK))) (shadow-mask2 0) ) ;; åŠçæºå (gimp-image-undo-group-start img) (gimp-context-push) (gimp-image-add-layer img shadow-layer -1) (gimp-image-add-layer-mask img shadow-layer shadow-mask) ;; ã·ã£ããŠã¬ã€ã€ãŒãã¹ã¯ã®äœæ (gimp-context-set-background shadow-color) (gimp-drawable-fill shadow-layer BG-IMAGE-FILL) (gimp-selection-layer-alpha layer) (gimp-context-set-background '(0 0 0)) (gimp-edit-fill shadow-mask BG-IMAGE-FILL) (gimp-selection-none img) ;; ã·ã£ããŠã¬ã€ã€ãŒãã¹ã¯ãžã®å€æŽ (gimp-context-set-background '(0 0 0)) (gimp-channel-ops-offset shadow-mask FALSE OFFSET-BACKGROUND x-offset y-offset) (plug-in-gauss-iir2 1 img shadow-mask blur-radius blur-radius) ;; ããäžåºŠã¬ã€ã€ãŒãã¹ã¯ãäœã (gimp-image-remove-layer-mask img shadow-layer APPLY) (set! shadow-mask2 (car (gimp-layer-create-mask shadow-layer BLACK-MASK))) (gimp-image-add-layer-mask img shadow-layer shadow-mask2) (gimp-selection-layer-alpha layer) (gimp-edit-fill shadow-mask2 WHITE-IMAGE-FILL) (gimp-selection-none img) ;; åŸåŠç (gimp-context-pop) (gimp-image-undo-group-end img) (gimp-displays-flush) ) ) (script-fu-register "script-fu-layer-effect-inner-shadow" "Inner Shadow..." "Create inner shadow on the layer with alpha" "Iccii <iccii@hotmail.com>" "Iccii" "Aug, 2001/May, 2009" "RGBA" SF-IMAGE "Image" 0 SF-DRAWABLE "Drawable" 0 SF-COLOR "Shadow color" '(0 0 0) SF-ADJUSTMENT "Shadow blur radius" '(10 1 100 1 10 0 0) SF-ADJUSTMENT "Drop shadow opacity" '(75 0 100 1 10 0 0) SF-ADJUSTMENT "Shadow X offset" '(5 -100 100 1 10 0 1) SF-ADJUSTMENT "Shadow Y offset" '(5 -100 100 1 10 0 1) ) (script-fu-menu-register "script-fu-layer-effect-inner-shadow" "<Image>/Filters/Layer Effect") 5.7 ã¬ã€ã€ãŒå
圩å€åŽå¹æã®ã¹ã¯ãªãã
äžéæéšåããŸãã§å€åŽã«åãã£ãŠçºå ããŠãããã®ãããªå¹æã®ã¹ã¯ãªããã§ãã ã¬ã€ã€ãŒå 圩å€åŽã®ã¹ã¯ãªãã ;; ã¬ã€ã€ãŒå 圩 (å€åŽ) ã¹ã¯ãªãã (define (script-fu-layer-effect-outer-glow img ; ç»å layer ; ããã¢ãã« (ã¬ã€ã€ãŒ) glow-color ; å 圩ã®è² blur-radius ; å 圩ã®ãŒããååŸ glow-radius ; å 圩ã®ååŸ opacity ; å 圩ã®äžéæåºŠ ) (let* ( (width (car (gimp-drawable-width layer))) (height (car (gimp-drawable-height layer))) (glow-layer (car (gimp-layer-new img width height RGBA-IMAGE "Outer Glow" opacity SCREEN-MODE))) (glow-mask (car (gimp-layer-create-mask glow-layer BLACK-MASK))) ) ;; åŠçæºå (gimp-image-undo-group-start img) (gimp-context-push) (gimp-image-add-layer img glow-layer -1) (gimp-image-add-layer-mask img glow-layer glow-mask) ;; å 圩ã¬ã€ã€ãŒãã¹ã¯ã®äœæ (gimp-context-set-background glow-color) (gimp-drawable-fill glow-layer BG-IMAGE-FILL) (gimp-selection-layer-alpha layer) (gimp-selection-grow img glow-radius) (gimp-edit-fill glow-mask WHITE-IMAGE-FILL) (gimp-selection-none img) ;; å 圩ã¬ã€ã€ãŒãã¹ã¯ãžã®å€æŽ (gimp-context-set-background '(0 0 0)) (plug-in-gauss-iir2 1 img glow-mask blur-radius blur-radius) ;; åŸåŠç (gimp-image-lower-layer img glow-layer) (gimp-context-pop) (gimp-image-undo-group-end img) (gimp-displays-flush) ) ) (script-fu-register "script-fu-layer-effect-outer-glow" "Outer Glow..." "Create outer glow on the layer with alpha" "Iccii <iccii@hotmail.com>" "Iccii" "Aug, 2001/May, 2009" "RGBA" SF-IMAGE "Image" 0 SF-DRAWABLE "Drawable" 0 SF-COLOR "Glow color" '(255 255 191) SF-ADJUSTMENT "Blur radius" '(10 1 100 1 10 0 0) SF-ADJUSTMENT "Glow radius" '(2 1 100 1 10 0 0) SF-ADJUSTMENT "Opacity" '(75 0 100 1 10 0 0) ) (script-fu-menu-register "script-fu-layer-effect-outer-glow" "<Image>/Filters/Layer Effect") 5.8 ã¬ã€ã€ãŒå
圩å
åŽå¹æã®ã¹ã¯ãªãã
å€åŽããäžéæéšåã®äžã«åãã£ãŠçºå ããŠãããã®ãããªå¹æã®ã¹ã¯ãªããã§ããå 圩ã®ã¿ã€ããšããŠãäžéæéšåã®çžãå ãã®ãå éšãå ãã®ããéžã¶ããšãã§ããŸãã ã¬ã€ã€ãŒå 圩å åŽã®ã¹ã¯ãªãã ;; ã¬ã€ã€ãŒå 圩 (å åŽ) ã¹ã¯ãªãã (define (script-fu-layer-effect-inner-glow img ; ç»å layer ; ããã¢ãã« (ã¬ã€ã€ãŒ) glow-color ; å 圩ã®è² blur-radius ; å 圩ã®ãŒããååŸ glow-radius ; å 圩ã®ååŸ opacity ; å 圩ã®äžéæåºŠ glow-type ; å 圩ã®ã¿ã€ã (çž or å éš) ) (let* ( (width (car (gimp-drawable-width layer))) (height (car (gimp-drawable-height layer))) (glow-layer (car (gimp-layer-new img width height RGBA-IMAGE "Inner Glow" opacity SCREEN-MODE))) (glow-mask (car (gimp-layer-create-mask glow-layer WHITE-MASK))) (glow-mask2 0) ) ;; åŠçæºå (gimp-image-undo-group-start img) (gimp-context-push) (gimp-image-add-layer img glow-layer -1) (gimp-image-add-layer-mask img glow-layer glow-mask) ;; å 圩ã¬ã€ã€ãŒãã¹ã¯ã®äœæ (gimp-context-set-background glow-color) (gimp-drawable-fill glow-layer BG-IMAGE-FILL) (gimp-selection-layer-alpha layer) (gimp-selection-invert img) (gimp-selection-grow img glow-radius) (gimp-selection-invert img) (gimp-context-set-background '(0 0 0)) (gimp-edit-fill glow-mask BG-IMAGE-FILL) (gimp-selection-none img) ;; å 圩ã¬ã€ã€ãŒãã¹ã¯ãžã®å€æŽ (plug-in-gauss-iir2 1 img glow-mask blur-radius blur-radius) (if (eqv? glow-type 1) (gimp-invert glow-mask)) ;; ããäžåºŠã¬ã€ã€ãŒãã¹ã¯ãäœã (gimp-image-remove-layer-mask img glow-layer APPLY) (set! glow-mask2 (car (gimp-layer-create-mask glow-layer BLACK-MASK))) (gimp-image-add-layer-mask img glow-layer glow-mask2) (gimp-selection-layer-alpha layer) (gimp-edit-fill glow-mask2 WHITE-IMAGE-FILL) (gimp-selection-none img) ;; åŸåŠç (gimp-context-pop) (gimp-image-undo-group-end img) (gimp-displays-flush) ) ) (script-fu-register "script-fu-layer-effect-inner-glow" "Inside Glow..." "Create inner glow on the layer with alpha" "Iccii <iccii@hotmail.com>" "Iccii" "Aug, 2001/May, 2009" "RGBA" SF-IMAGE "Image" 0 SF-DRAWABLE "Drawable" 0 SF-COLOR "Glow color" '(255 255 191) SF-ADJUSTMENT "Blur radius" '(10 1 100 1 10 0 0) SF-ADJUSTMENT "Glow radius" '(2 1 100 1 10 0 0) SF-ADJUSTMENT "Opacity" '(75 0 100 1 10 0 0) SF-OPTION "Glow type" '("Edge" "Inner") ) (script-fu-menu-register "script-fu-layer-effect-inner-glow" "<Image>/Filters/Layer Effect") 5.9 ã¹ã¯ãªããã®çºå±
ä»åã®åã€ã®ã¹ã¯ãªãããå ¥åãã人ã¯å€åãããããã®ã¹ã¯ãªãããã»ãšãã©åããããªæé ã«ãªã£ãŠããããšã«æ°ãä»ãã§ããããå®éããããã®å¹æã¯éåžžã«è¯ã䌌ãæé ã§è¡ãããšãã§ããŸãã ã¹ã¯ãªããã®äžããå ±éããéšåãæãåºããŠããããäžã€ã®é¢æ°ãšããŠæžããå ±é颿°ãããããã®å¹æã®ã¹ã¯ãªããããåŒã³åºãããšã§ããããã®å¹æãè¡ããããã«ãªãã°ã¹ã¯ãªãããç°¡æœã«ãªããŸãã å ±é颿°ãåŒã³åºãæã«ã¯ãããããã®ã¹ã¯ãªããã®åºæã®åŠçãå ±é颿°ã«äœããã®æ¹æ³ã§æããŠããå¿ èŠããããŸãããã®èŸºã工倫ããªããã°ãªããŸããã 5.10 ãããªãåŠç¿ã®ããã«
ã¹ã¯ãªãããæžãããã®åºæ¬ç¥èãåŸãŠæåã«ããã€ãã¹ã¯ãªãããæžããåŸã¯ãããã«è€éãªåŠçãè¡ãã¹ã¯ãªãããèªåã§æžããããªãããšã§ãããã basic1-logo.scm ã®æ§é ã¯æ¬¡ã®ããã«ãªã£ãŠããŸãã
ãŸããæ¬¡ã®é¢æ°ãã¹ã¯ãªããäžããåŒã³åºãããŸãã
script-fu-basic1-logo ã¯ç¬ç«å®è¡åã¹ã¯ãªããã§ãããscript-fu-basic1-logo-alpha ã¯ç»åäŸååã¹ã¯ãªããã§ãããããŠãã®äž¡æ¹ããåŒã³åºããã apply-basic1-logo-effect ãå®éã®å¹æé©çšã®åŠçéšåãšããæ§é ã«ãªã£ãŠããŸãã æåããåŠçãåããæ§é ã®ã¹ã¯ãªãããæžãããšã¯é£ããã§ãããããå°æ¥çã«ã¯ãã®ãããªçºå±ãèŠéã«å ¥ããŠãããšè¯ãã§ãããã |