2024/07/29(月) [n年前の日記]
#1 [krita] Kritaのブラシプリセットファイルについてもう少し調べてた
Krita のブラシプリセットファイルについてもう少し調べてた。
◎ ブラシプリセット内容を出力するPythonスクリプトについて :
ググっていたら、ブラシプリセット名を変更するPythonスクリプト群に遭遇。その中に、ブラシプリセット(.kpp)の内容を出力するPythonスクリプトがあった。
_LainFenrir/krita-preset-renamer: A set of scripts to rename krita presets.
_krita-preset-renamer/scripts/view_metadata.py at main - LainFenrir/krita-preset-renamer
_Batch rename brushes prefix - Develop / Feature Requests - Krita Artists
_[HELP] Bulk change the name of kpp brushes - Support and Advice / General Questions - Krita Artists
view_metadata.py がプリセットの内容を表示するスクリプト。試用してみた。環境は Windows10 x64 22H2 + Python 3.10.10 x64。
動作させるには、send2trash と Pillow が必要。
以下で使用。
たしかに Preset の内容が出力された。Python が入っている環境なら、ExifTool を導入してどうこうするより、こちらを使ったほうが楽かもしれない。
ちなみに、これらのスクリプトを使ってブラシプリセット名を変更すると、ブラシプリセットファイルのチェックサムだかハッシュだかが変化してしまってKrita上では警告が出てくるらしい。どんなアルゴリズムで、どこからどこまでを使ってその値を求めているのかが分かれば対応することもできるのだろうけど…。
「プリセット名の変更なんてKrita上でやればいいじゃん」と言われそうだけど、何十件もリネームしたい場合は一つ一つリネーム作業なんてやってられないのでそのあたりを自動化したい、ということで件のスクリプトが書かれたらしい。
_LainFenrir/krita-preset-renamer: A set of scripts to rename krita presets.
_krita-preset-renamer/scripts/view_metadata.py at main - LainFenrir/krita-preset-renamer
_Batch rename brushes prefix - Develop / Feature Requests - Krita Artists
_[HELP] Bulk change the name of kpp brushes - Support and Advice / General Questions - Krita Artists
view_metadata.py がプリセットの内容を表示するスクリプト。試用してみた。環境は Windows10 x64 22H2 + Python 3.10.10 x64。
動作させるには、send2trash と Pillow が必要。
python -m pip install send2trash --upgrade python -m pip install Pillow --upgrade
以下で使用。
python view_metadata.py hoge.kpp python view_metadata.py hoge.kpp > hoge.xml
たしかに Preset の内容が出力された。Python が入っている環境なら、ExifTool を導入してどうこうするより、こちらを使ったほうが楽かもしれない。
ちなみに、これらのスクリプトを使ってブラシプリセット名を変更すると、ブラシプリセットファイルのチェックサムだかハッシュだかが変化してしまってKrita上では警告が出てくるらしい。どんなアルゴリズムで、どこからどこまでを使ってその値を求めているのかが分かれば対応することもできるのだろうけど…。
「プリセット名の変更なんてKrita上でやればいいじゃん」と言われそうだけど、何十件もリネームしたい場合は一つ一つリネーム作業なんてやってられないのでそのあたりを自動化したい、ということで件のスクリプトが書かれたらしい。
◎ ENV_Brushes_Forest_Vegetation_3.bundle について調べてた :
以下のブラシプリセットの中の、ENV_Brushes_Forest_Vegetation_3.bundle に含まれているブラシの一部がなんだか怪しい感じがしたので、.kpp の内容を調べてみた。
_Environment Brushes and Forest Vegetation 3 by IForce73 on DeviantArt
「Easy bark」というブラシプリセットを選んでも、ブラシ形状が円の状態だったので、これが正常動作状態なのか不安になったわけで…。
プリセット、「ENV_Brushes - Easy Bark_.kpp」のxml内容は以下。.kpp を .png にリネームしてから、ExifTool 11.77 に渡して出力して、xml部分だけを MSYS2 + xmllintで整形してみた。
_env_brushes_-_easy_bark_.kpp.xml.txt
「brush_definition」で、ブラシ形状としては「Circle」が指定されていて、「requiredBrushFile」にはブラシ画像が何も指定されてなかったので、どうやらブラシ形状は円の形で正しいらしい。たぶん。
これで、件のブラシセットのほとんどを、Krita 5.2.3 上でも使えそうな気がしてきた。
ちなみに、このブラシ群を使うと、ブラシを選んでマウスをぐりぐり動かすだけで以下のような画像が描けてしまう。いや、「描く」と言うより「作る」と言っておいたほうがいいのかな…。何にせよ、あっという間にそれっぽい画像が作れるブラシなのでイイ感じ。ありがたや。
_Environment Brushes and Forest Vegetation 3 by IForce73 on DeviantArt
「Easy bark」というブラシプリセットを選んでも、ブラシ形状が円の状態だったので、これが正常動作状態なのか不安になったわけで…。
プリセット、「ENV_Brushes - Easy Bark_.kpp」のxml内容は以下。.kpp を .png にリネームしてから、ExifTool 11.77 に渡して出力して、xml部分だけを MSYS2 + xmllintで整形してみた。
_env_brushes_-_easy_bark_.kpp.xml.txt
「brush_definition」で、ブラシ形状としては「Circle」が指定されていて、「requiredBrushFile」にはブラシ画像が何も指定されてなかったので、どうやらブラシ形状は円の形で正しいらしい。たぶん。
これで、件のブラシセットのほとんどを、Krita 5.2.3 上でも使えそうな気がしてきた。
ちなみに、このブラシ群を使うと、ブラシを選んでマウスをぐりぐり動かすだけで以下のような画像が描けてしまう。いや、「描く」と言うより「作る」と言っておいたほうがいいのかな…。何にせよ、あっという間にそれっぽい画像が作れるブラシなのでイイ感じ。ありがたや。
[ ツッコむ ]
以上です。