Use this command to install AINE Paint with WinGet:
winget install --id=StudioAINE.AINEPaint -e Copy WinGet command to clipboard AINE Paint is a free drawing application for Windows, designed so that people who have never used
drawing software before can start without getting lost.
It supports pen, pencil and eraser tools with pen pressure, layers, rectangular and lasso selection
with move, scale and rotate, flood fill, a colour picker and an eyedropper, and 50 steps of undo.
Artwork can be saved in its own .ainpaint project format, and exported to PNG with transparency
preserved. PNG and JPEG images can be opened as a starting point.
No advertisements are shown.
AINE Paint
Windows向けの、無料のお絵描きソフトです。
子どもが日常的に使えることを第一に考えて作っています。
インストールも起動も軽く、押しやすい大きなボタン、
落ち着いた色のダークテーマ。広告は入りません。
最新版をダウンロード
(Windows 10 / 11・.NET のインストール不要・管理者権限も不要)
できること
キャンバス — サイズ指定、白/透明の背景、ズーム、パン
ブラシ — ペン / 鉛筆 / 消しゴム、サイズ・不透明度・色、筆圧対応
色 — カラーピッカー(HSV / HEX / RGB)、スポイト、ブラシプリセット
塗りつぶし — 許容値と「はみ出し」の調整つき
レイヤー — 追加 / 複製 / 削除 / 並び替え / 表示切替 / 名前 / 不透明度
選択と変形 — 長方形・なげなわで選び、移動・拡大縮小・回転
元に戻す — 50手ぶん。大きなキャンバスでも待たされません
保存 — 独自形式 .ainpaint、PNG書き出し(透明を保持)、PNG / JPG 読み込み
技術構成
領域 採用 言語 / ランタイム C# / .NET 9 (net9.0-windows) UI WPF 描画エンジン SkiaSharp (SkiaSharp.Views.WPF) 筆圧 WPF Stylus API 配布 自己完結 publish(単一exe)+ Inno Setup
ビルドと起動
git clone https://github.com/AINEsoekakiland/AINEPaint.git
cd AINEPaint
dotnet run --project src\AINEPaint\AINEPaint.csproj
Visual Studio / VS Code で AINEPaint.sln を開いても可。
必要なのは .NET 9 SDK だけです。
プロジェクト構造(責務分離)
src/AINEPaint/
App.xaml アプリ起動・テーマ読み込み
MainWindow.xaml UIシェル(ツール / キャンバス / レイヤー / 下部バー)
Themes/ テーマ定義(色は全てここに集約)
Drawing/ キャンバス表示・ストローク描画
Brushes/ ブラシ定義(ペン / 鉛筆 / 消しゴム)
Layers/ レイヤーモデルと合成
History/ Undo / Redo(操作履歴ベース)
IO/ PNG / JPG 読み書き、.ainpaint 形式
Color/ 色管理・カラーピッカー
Settings/ 設定の保存・読み込み
全フォルダに実装が入った。
設計上の決めごと
キャンバスの画素は常に透明で始める。 白背景は表示・書き出し時に敷くものとして扱う。
焼き込むと消しゴムとPNG透明書き出しが両立しない。
ストロークは専用バッファに不透明で描き、指を離した時点で1回だけ合成する。
直接描くと、同じストローク内で線が重なった箇所だけ濃くなる。
Undo はタイル差分方式。 変更されたタイルの変更前の中身だけを保存し、
Undo / Redo は「入れ替え」という同一操作で処理する。
レイヤーの追加・削除・並び替えは参照と並び順だけを保存するので画素の複製が起きない。
.ainpaint は ZIP + PNG。 中身は project.json とレイヤーごとの PNG。
独自バイナリにしないのは、圧縮と透明が両立し、万一のときZIPから絵を救出でき、
項目を足しても古いファイルが読めなくならないため。
変形は確定するまで元のレイヤーを書き換えない。 元の位置の穴は表示のたびに
動的に開ける。これで Undo は確定時の1手で済み、キャンセルは捨てるだけで成立する。
表示と確定に同じ処理を使うので、見た目と結果が必ず一致する。
設定は無くても動くもの。 読み書きに失敗してもアプリは止めず既定値で動く。
ただし理由は SettingsStore.LastError に残す(黙って消すと不具合に気づけない)。
JSON に書けない値(NaN など)を既定値に使わないこと。
レイヤー合成は PaintDocument.Render に集約。 描画中のストロークは
選択中レイヤーの中で SaveLayer によりグループ化してから合成する。
これがないと、消しゴムが下のレイヤーや背景まで削ってしまう。
実装ロードマップ(MVP)
MVP 完成。
Phase 2
Phase 2 完了。
配布(未着手)
Phase 2以降はMVP完成後に着手する。
ダウンロードと導入
Releases から
AINEPaint-v<バージョン>-Setup.exe を実行してください。
.NET のインストールは不要です(ランタイムを同梱しています)
インストーラーは管理者権限を求めません
.ainpaint ファイルはダブルクリックで開けるようになります
インストールせずに使いたい場合は、Releases の AINEPaint.exe を
好きな場所に置いてそのまま実行できます(Portable 版)
ダウンロード時に警告が出る場合
公開して間もないソフトウェアには、ブラウザと Windows が警告を表示することがあります。
場面 表示 対処 ダウンロード時 「一般的にダウンロードされていません」 ダウンロード一覧の項目から「保持する」を選ぶ 実行時 「WindowsによってPCが保護されました」 「詳細情報」→「実行」を選ぶ
いずれもダウンロード回数がまだ少ないことが理由で、ウイルスとして
検出されているわけではありません。コード署名証明書を取得していないため、
Windows が発行元を確認できない状態になっています。
ソースコードはすべてこのリポジトリで公開しています。
内容を確認したうえで、ご自身でビルドすることもできます。
配布用ビルド
powershell -ExecutionPolicy Bypass -File build\publish.ps1
powershell -ExecutionPolicy Bypass -File build\make-installer.ps1
publish\AINEPaint.exe(単一exe)と dist\AINEPaint-v<バージョン>-Setup.exe ができます。
インストール済みのアプリに修正を反映するには、発行 → インストーラー作成 → インストールし直し
の3つが全部必要。コードを直しただけではインストール済みの exe は変わらない。
ライセンス
MIT License — 詳細は LICENSE を参照。