概要
GIMPで Python-fu
を使用した一括保存を行う
環境
- Windows 10
- GIMP 2.10.32
- 公式ページ のexeでインストール
- Microsoft Store は不使用
前提
GIMPでインポートしたファイルを全て xcf
ファイルとして保存したい
- 画像を数百枚単位で保存するときが面倒になる
- 一括保存ができない
- GIMPのインターフェースとしては、アクティブなファイルを一つ一つ保存する必要がある
- 一括処理を行う
BIMP
にもxcf
ファイルの保存がない
動機
- GIMPではjpegなどの画像ファイルを開くが、このままでは未保存のステータスになる
- 編集結果をそのまま保存したい場合は GIMP独自の
xcf
ファイルで保存する必要がある - GIMPはクラッシュしがちなので、
xcf
ファイルでこまめに保存したい - 保存結果は
BIMP
でjpegなど保存形式を指定して一括エクスポートできる-
xcf
ファイルとして保存しない場合、未保存の編集結果でエクスポートできない
-
作成したファイル
save.py
#!/usr/bin/python
from gimpfu import *
import os
def plugin_main(timg, tdrawable):
path = "C:\\path\\to"
for img in gimp.image_list():
# extract filename
basename = os.path.basename(img.filename)
name = os.path.splitext(basename)[0]
# e.g. 0001.jpg -> 0001.xcf
filepath = os.path.join(path, name + ".xcf")
pdb.gimp_xcf_save(0, img, img.active_layer, filepath, filepath)
register(
"python_fu_xcf",
"Saves xcf files from active layer",
"Saves xcf files from active layer",
"pldb",
"pldb",
"2021",
"<Image>/Image/saves xcf...",
"RGB*, GRAY*",
[],
[],
plugin_main)
main()
ベースとなるコードは下記サイトを参考にした
plugin_main
内が保存処理となる
コード中の path = "C:\\path\\to"
の左辺は保存先となるので、存在するディレクトリに変更する
これを次のディレクトリに配置する
C:\Users\<ユーザー名>\AppData\Roaming\GIMP\2.10\plug-ins
plug-ins
フォルダはインストール方法やバージョンによって相違する可能性がある
実行
[画像(I)]メニューに追加された saves xcf...
を選択する
保存先のフォルダに xcf
ファイルが存在することを確認する
この xcf
ファイルをGIMPで開いて作業する