GIMPプラグインに渡す引数の書き方

gimp-register-params.png

レジスターの引数

時に、ユーザーに要求する引数になることもありますが、
置くメニューの位置によっては書かなきゃいけない引数が決まってる場合もあります

<Image>の場合

register(
        "python_fu_resize",
        "Saves the image at a maximum width and height",
        "Saves the image at a maximum width and height",
        "Nathan A. Good",
        "Nathan A. Good",
        "2010",
        "<Image>/Image/Resize to max...",
        "RGB*, GRAY*",
        [#この部分がユーザに要求する引数になる
                (PF_INT, "max_width", "Maximum Width", 500),
                (PF_INT, "max_height", "Maximum Height", 500),
                (PF_BOOL, "copy", "Make a JPEG copy", TRUE),
        ],
        [],
        plugin_main)

すると、こうなる
test.png

使用上の注意

最後の成分にも,カンマをつけること。
[(),(),]でも[[],[],[]]でもどっちでも構わない。

可能な型と文例

PF_INT8
PF_INT16
PF_INT32
(PF_INT, "max_width", "Maximum Width", 500),
(PF_VALUE, "radius_v", "半径", 128),#PF_INTと同じっぽい
PF_FLOAT
(PF_STRING, "path", "Path " , "/home/burkhard/pic/travel/sitges/")
(PF_OPTION, "clip_result", "    クリッピング", 0, ("自動調整", "変換前のレイヤーサイズ", "結果で切り抜き", "縦横比で切り抜き")),#ドロップダウンメニューを作ってくれる
(PF_COLOR, "darkc",  "Dark",  (0,0,0) ),#ラベルと、四角い色見本(1色だけ)
PF_COLOUR
PF_REGION
PF_IMAGE
PF_LAYER
PF_CHANNEL
PF_DRAWABLE
(PF_TOGGLE, "is_crop", "各レイヤーを自動切り抜きしてから配置", True),
(PF_BOOL, "copy", "Make a JPEG copy", TRUE),#TOGGLEとBOOLは同じようだ
(PF_RADIO, "file_type", "File type:", ".jpg .jpeg .JPG", (("jpg", ".jpg .jpeg .JPG"), ("png", ".png .PNG"), ("tiff", ".tiff .tif .TIF .TIFF"))),
PF_SLIDER
(PF_SPINNER,"width","横(ピクセル)",1500,(1,10000,1)),
PF_ADJUSTMENT
PF_FONT
(PF_FILE,   "srcfile",  "Image filename",        None)
(PF_DIRNAME, "save_dir",  "保存ディレクトリ", "."), # ディレクトリ名の選択欄(変数名, 項目名, 初期値)
PF_BRUSH
PF_PATTERN
PF_GRADIENT
PF_PALETTE

<Vectors>の場合

[(PF_IMAGE,'image','Input image', None),(PF_VECTORS,'path','Input path', None),]
Bibliography

サポートサイト Wikidot.com