「Krita」と「Python」の基礎知識
Kritaのダウンロードとインストール
前置きはこれくらいにして、早速環境構築のためにKritaをダウンロードしてインストールして行きましょう。Kritaは、先にも紹介しましたが、公式サイトからダウンロードしてデフォルト設定でインストールしてください。WindowsでもmacOSでも、Linuxでも同様に動作します。
なお、2024年6月現在のKritaの最新版はVersion 5.2.2です。定期的にバージョンアップがありましたが、今年に入ってからまだ1度も最新バージョンが出ていないのが残念です。
スクリプターの使い方について
KritaでPythonをプログラミングするには「スクリプター」機能を使います。スクリプターは図3のように「ツール」→「スクリプト」→「スクリプター」メニューにあります。
前述しましたが、Kritaは落ちやすいため使い慣れたエディタで「スクリプティング」しても良いでしょう。Pythonなので敢えてコードを書く「コーディング」と言わず、スクリプトを書くので「スクリプティング」と言います。
既存のpyファイルを開くには、図4のように「スクリプター」にある「ファイル」→「開く」メニューで開きます(Kritaメインの「ファイル」→「開く」メニューではありません)。ここではまだ何も開く必要はありません。
Kritaで実際にPythonをプログラミングしてみる
Pythonプログラミングの文法で最大の特徴は、何と言っても必ず「インデント」で階層分けをするところでしょう。インデントとは半角空白文字やタブ文字で「字下げ」することです。同じpyファイルの中では半角空白文字だけかタブ文字だけか片方に統一します。
例えば、下記のサンプルスクリプト01は動きますが、インデントのないサンプルスクリプト02はエラーが出ます。その理由は「for」文で中身を必ず1文は書かなければいけないところ、インデントしていないため「print(str(i))」がfor文の外だと判断されてしまうからです。
for文は大抵のプログラミング言語にもある制御構文なので分かるでしょうし、print文もよくあるコンソールに文字を出力する関数です。またサンプルスクリプト02を敢えて書き換えるなら、サンプルスクリプト03のようにスクリプティングします。
・サンプルスクリプト01(成功)for i in range(0,10): print(str(i)) # インデントする print("0~10未満の数字をコンソールに表示する")・サンプルスクリプト02(エラー)
for i in range(0,10): print(str(i)) # インデントしていない print("エラーになる")・サンプルスクリプト03(成功)
for i in range(0,10): pass # インデントする print(str(i)) print("for文で何もしない")
先ほどのサンプルスクリプト01のようにスクリプティングし、図5のように右向き三角「▷」をクリックして実行するとコンソール画面に文字が表示されます。ここでは、まだ図形を描くなどのKritaの機能は使っていません。
Pythonのもう1つすごいところは、単体でも実行できるだけでなく様々なツールに組み込んで、そのツールの機能も扱える点です(これはツール開発者が行うことなので、本連載では解説しません)。今回で言えば、組み込まれたPythonからKritaの基本機能にアクセスして、レイヤーを追加したり画像を読み込んだりもできる、ということです。
おわりに
今回は連載第1回ということで、KritaとPythonの基礎知識や両者の関係について、Krita上でPythonをプログラミングしてスクリプトを書けることを紹介しました。
次回からは、Pythonの文法の解説に入っていきます。前連載の「『TAURI』+『Rust』ではじめるデスクトップアプリ開発」では序盤に文法の解説ばかりで前置きが長くなってしまったので、第3回からはすぐにKritaの基本機能にアクセスしていきたいと思います。
連載バックナンバー
Think ITメルマガ会員登録受付中
全文検索エンジンによるおすすめ記事
- 「Krita」を始める前にー「Python」の基本的な文法を押さえよう
- 「Krita」で「Python」をプログラミングしてはじめての画像を描こう
- 「Krita」と「Python」のクラスで画像を加工しよう
- 「Krita」と「Python」でダイアログUIを構築してみよう
- 「Krita」と「Python」でアーティスティックな絵を描こう
- 「Krita」と「Python」でクラスの文法を身につけよう
- 「Krita」と「Python」のクラスでアニメーション動画を作ろう
- Swiftでの文字列操作の基礎(その1)
- 「Krita」と「Python」でUIパーツを構築してみよう
- 「Krita」と「Python」で「ベジェ曲線」を描いてみよう