■ Gimp Script−Fu覚書
test_write2file.scm
; Test : write string to file.
(define (test_write2file str)
(set! fp (fopen "c:/temp/zxcv.txt" "w"))
(fwrite str fp)
(fwrite "\n" fp)
(fclose fp)
(gimp-quit 0)
)
; Register our script with script-fu.
(script-fu-register "test_write2file"
"
test.bat"c:\Program Files\Gimp\bin\gimp" -i -b "(test_write2file \"%1\")"Gimpをバッチモードで起動してます。『test 今日は良い天気です。』とMS-DOSプロンプトから入力します。上のスクリプトでは出力ファイルは"c:/temp/zxcv.txt"と指定しています。 |
test_comment.scm
; Test : コメントに日本語は使えるかをテスト
(define (test_comment str)
(set! fp (fopen "c:/temp/zxcv.txt" "w"))
(fwrite str fp)
(fwrite "\n" fp)
(fclose fp)
(gimp-quit 0)
)
; Register our script with script-fu.
(script-fu-register "test_comment"
"
test.bat"c:\Program Files\Gimp\bin\gimp" -i -b "(test_comment \"%1\")"日本語のコメントが使用できるかを試してみたところ、問題なく動きました。ただ、これがどんな場合でも大丈夫なのかは良く分かりません。 |
test_currentdir.scm
; Test : カレントディレクトリはどこになっているかチェック
(define (test_currentdir str)
(set! fp (fopen "zxcv.txt" "w"))
(fwrite str fp)
(fwrite "\n" fp)
(fclose fp)
(gimp-quit 0)
)
; Register our script with script-fu.
(script-fu-register "test_currentdir"
"
test.bat"c:\Program Files\Gimp\bin\gimp" -i -b "(test_currentdir \"%1\")"カレントディレクトリがどこになっているのか調べてみました。結果は予想通りで、バッチファイルを実行したところにzxcv.txtが作られました。 |
test_while.scm
; Test : 繰り返し処理
(define (test_while str num)
(set! fp (fopen "zxcv.txt" "w"))
(set! i 0)
(while (< i num)
(fwrite (string-append str " " (number->string i 10 2) "回目\n") fp)
(set! i (+ i 1))
)
(fclose fp)
(gimp-quit 0)
)
; Register our script with script-fu.
(script-fu-register "test_while"
"
test.bat"c:\Program Files\Gimp\bin\gimp" -i -b "(test_while \"%1\" %2)"繰り返し処理はwhileしかないようです。まあ、これがあれば全て間に合うので、あまり問題は無いのですが、他の言語になれているとちょっと面食らってしまいます。 |