レイヤーを別々のpngに保存するpython-fu

ディレクトリを指定してlayerをpngで保存する。
ファイル名はレイヤー名そのまま。


UTF-8
%USERPROFILE%/.gimp-2.6/plug-ins/layersplitter.py
と保存する。


file_png_save_defaultsの引数がgimppdbで出てくるのと微妙に違ったりするのだが
python向けのpdb referenceとかどこかにないのだろうか。

#!/usr/bin/python
# coding: UTF-8
import gimpfu

def python_layer_splitter(img, drawable, dst):
  # each layer
  for layer in img.layers:
    path="%s/%s.png" % (dst, layer.name)
    #gimpfu.pdb.gimp_message(path)
    gimpfu.pdb.file_png_save_defaults(img, layer, path, path)

gimpfu.register(
        # name
        "python-fu-layer-splitter",
        # blurb
        "python-fu layer splitter",
        # help
        "split visible layers to png files",
        # author
        "ousttrue <ousttrue._{at}_.gmail.com>",
        # copyright
        "public domain",
        # date
        "2009",
        # menupath
        "<Image>/Layer/LayerSplitter...",
        # imagetypes
        "RGB*, GRAY*, INDEXED",
        # params
        [
          (
            # ディレクトリ選択、 変数名、ラベル、初期値
            gimpfu.PF_DIRNAME, "arg0", "出力ディレクトリ", ""
            )
          ],
        # results
        [],
        # function
        python_layer_splitter)

gimpfu.main()