大きさはそのまま余白をつける
サブスタンスデザイナーに読み込む画像は、デフォルト設定で2のべき乗サイズに縦横幅が拡大される。しかし、複数の一連の画像パーツを読み込む場合などは相対的な大きさをキープしたままにしたい。拡大処理による画像の劣化も回避したい。そこで複数の画像に一括で2のべき乗サイズまで余白をつけるプログラムを作った。
以前に似たものを作っているが ↓
これらは画像フィルターとして使ったサブスタンスから出力された画像を後処理する事を考慮したもので、今回は画像素材を読み込む際に前処理を施すもの。コードは上記2つを合わせたような物。
今回のプログラムで想定している利用用途は、タイルサンプラーで配置する画像を用意する事。
使い方
ソースコードはここに。
バッチファイルに画像が保存されているフォルダもしくは複数選択した画像(9個まで)をドラッグアンドドロップすると、画像が上書きされ、一番近い2のべき乗サイズまで真ん中合わせで余白が追加される。容赦なく上書きされるので注意。
※バッチファイルは自分の環境にわせてpythonの仮想環境をアクティベートする処理が入っているので、そのあたりは利用する環境に合わせて調整する
処理の詳細
実際は、コマンドでいろいろなことができる。
- 任意のサイズの余白をつける
- 最低サイズ指定(すべての画像サイズをそろえる場合などに使う)
- 真ん中寄席以外の配置
- 背景色の指定
- ファイルを複数処理する際のサイズの統一
- 正方形サイズに強制
具体的に処理は以下の流れになっている。
一度余白全部削除 -> 任意のサイズの余白追加 -> 最低サイズ指定あればそこまで大きくする -> 2のべき乗吸着指定あればさらに調整
usage: prepareImageForSdInput.py [-h] [-o OUTPUT_DIR] [--overwrite] [-bw BORDER_WIDTH] [-al {CENTER,TL,BR}] [-p2] [-sq] [-min MIN_SIZE MIN_SIZE] [--auto_min_size] [-bg BG_COLOR BG_COLOR BG_COLOR BG_COLOR] [src_images ...]
画像サイズに適切に余白をつける * 一度余白全部削除 -> * 任意のサイズの余白追加 -> * 最低サイズ指定あればそこまで大きくする -> * 2のべき乗吸着指定あればさらに調整
positional arguments:
src_images source image
options:
-h, --help show this help message and exit
-o OUTPUT_DIR, --output_dir OUTPUT_DIR
output image dir
--overwrite overwrite output image file
-bw BORDER_WIDTH, --border_width BORDER_WIDTH
transparent border width
-al {CENTER,TL,BR}, --align {CENTER,TL,BR}
-p2, --power_of_2 output image size is power of 2.
-sq, --square output image size is square.
-min MIN_SIZE MIN_SIZE, --min_size MIN_SIZE MIN_SIZE
minimum final size
--auto_min_size when more than 2 images are specified,the min_size argument is automatically determined from the size of the input image.
-bg BG_COLOR BG_COLOR BG_COLOR BG_COLOR, --bg_color BG_COLOR BG_COLOR BG_COLOR BG_COLOR
background color like 255 255 255 255








