昨日に引き続きアズールレーンネタで昨日作ったやつをちょっと改良。
図鑑のスクショを全部並べるとデカイのでちょっと小さくしようかなと。元の画像が大きいもんね。

元の状態から必要な部分だけ切り出して GIMP でレイアウト調整してみる。「コメント」とかのボタンに被るのは仕方ない。

ひとまず各パーツごとに切り出して、あとから各パーツを -compose Over -composite で合成するようにした。
#!/bin/bash convert -alpha on 001.png -crop 657x592+0+47 +repage x001.png convert -alpha on \ '(' 001.png -crop 342x208+707+137 +repage ')' \ '(' -size 342x208 xc:none -draw 'roundrectangle 0,0 341,207 5,5' ')' \ -compose DstIn -composite x002.png convert -alpha on \ '(' 001.png -crop 88x88+725+421 +repage ')' \ '(' -size 88x88 xc:none -draw 'roundrectangle 0,0 87,87 8,8' ')' \ -compose DstIn -composite x003.png convert -alpha on \ '(' 001.png -crop 88x88+833+421 +repage ')' \ '(' -size 88x88 xc:none -draw 'roundrectangle 0,0 87,87 8,8' ')' \ -compose DstIn -composite x004.png convert -alpha on \ '(' 001.png -crop 88x88+942+421 +repage ')' \ '(' -size 88x88 xc:none -draw 'roundrectangle 0,0 87,87 8,8' ')' \ -compose DstIn -composite x005.png convert x001.png \ -gravity NorthEast \ -compose over \ x002.png -geometry +8+350 -composite \ x003.png -geometry +8+65 -composite \ x004.png -geometry +8+157 -composite \ x005.png -geometry +8+249 -composite \ x006.png
レイアウトが概ね決まったら今度は1コマンド化。よく考えたら土台になる部分(上で言うと x001.png)は切り出す必要がなく、チャートやアイコンを重ねて最後にまとめてクロップしてしまえばよいことに気づいた。
-clone 0 でベースの画像を複製して重ねて複製して重ねて…の繰り返し。+clone で +swap とか -swap {index},{index} とか使ってやる気だったけど -clone {index} があるんだった…。マジで ImageMagick 忘れる…。
#!/bin/bash
convert "${1}" \
'(' -clone 0 -alpha on -crop 342x208+707+137 '(' -size 342x208 xc:none -draw 'roundrectangle 0,0 341,207 5,5' ')' -compose DstIn -composite -geometry +307+397 ')' -compose Over -composite \
'(' -clone 0 -alpha on -crop 88x88+725+421 '(' -size 88x88 xc:none -draw 'roundrectangle 0,0 [f:id:mattintosh4:20171022231147j:plain][f:id:mattintosh4:20171022231215j:plain] 87,87 8,8' ')' -compose DstIn -composite -geometry +561+112 ')' -compose Over -composite \
'(' -clone 0 -alpha on -crop 88x88+833+421 '(' -size 88x88 xc:none -draw 'roundrectangle 0,0 87,87 8,8' ')' -compose DstIn -composite -geometry +561+204 ')' -compose Over -composite \
'(' -clone 0 -alpha on -crop 88x88+942+421 '(' -size 88x88 xc:none -draw 'roundrectangle 0,0 87,87 8,8' ')' -compose DstIn -composite -geometry +561+296 ')' -compose Over -composite \
-crop 657x592+0+47 +repage "${1%.*}"_.png
最後の結合もお好みで分割できるようにしたのでだいぶコンパクトになった。
あとは加賀とエンタープライズが来てくれれば…(´;ω;`)


