hackugyo
11/9/2015 - 10:13 AM

「NumberPickerのボタンを上下入れ替えたい!」そんなとき画像を作るスクリプト

「NumberPickerのボタンを上下入れ替えたい!」そんなとき画像を作るスクリプト

#!/usr/bin/env bash

set -ue

# cd app/src/main/res/drawable-hdpi/ にtimepicker_down_*.9.png, timepciker_up_*.9.png

# _down_なボタンは,_up_のボタンからいいところを切り取って重ね,マイナスからプラスに変える.
for i in $(ls timepicker_up_*.png);
do
    convert $i -crop '5x12+57+20' "${i}_arrow_top.png";
    convert $i -crop '5x12+57+36' "${i}_arrow_bottom.png";
    h=${i/_up_/_down_};
    convert  $h "${i}_arrow_top.png" -gravity northwest -geometry +57+16 -composite "${i}_middle.png"
    convert  "${i}_middle.png" "${i}_arrow_bottom.png" -gravity northwest -geometry +57+32 -composite $h

    rm "${i}_arrow_top.png" "${i}_arrow_bottom.png"  "${i}_middle.png";
done;

# _up_なボタンは,自分のなかのいいところをずらして右に持ってくれば,プラスの縦棒が消えてマイナスに見える.
for i in $(ls timepicker_up_*.png);
do
    convert $i -crop '5x12+52+20' "${i}_arrow_top.png";
    convert $i -crop '5x12+52+36' "${i}_arrow_bottom.png";
    h=${i/_up_/_down_};
    convert  $i "${i}_arrow_top.png" -gravity northwest -geometry +57+20 -composite "${i}_middle.png"
    convert  "${i}_middle.png" "${i}_arrow_bottom.png" -gravity northwest -geometry +57+36 -composite $i

    rm "${i}_arrow_top.png" "${i}_arrow_bottom.png"  "${i}_middle.png";
done;

# _down_側の9patchを正しくつけなおす
for i in $(ls timepicker_up_*.png);
do
    convert $i -crop '1x62+0+0' "${i}_correct_9p.png";
    h=${i/_up_/_down_};
    convert $i -crop '1x62+1+0' "${i}_9p_background.png";
    convert $h -crop '118x62+1+0' "${h}_correct_right_part.png";

    # 結合して、左端の9patchをブランクにする
    convert +append "${i}_9p_background.png" "${h}_correct_right_part.png" $h;
    # 重ねて、左端の9patchを正しくする
    convert $h "${i}_correct_9p.png" -gravity northwest -geometry +0-5 -composite $h
    rm "${i}_correct_9p.png" "${h}_correct_right_part.png" "${i}_9p_background.png";
done