Androidの壁紙が簡単に作れるGIMPの拡張機能(?)とかあればいいのにー。
— いくや (AWASHIRO Ikuya)さん (@ikunya) 11月 25, 2012
ダウンロードはこちら: https://gist.github.com/4143779 (android-wallpaper.scm)
といっても、端末の画面サイズの画像をセンタリングしてAndroid壁紙サイズにリサイズするだけだけども。
しょっちゅう壁紙作って替えたい人向けですね。
使い方
Scriptのダウンロードと配置
ダウンロードしたandroid-wallpaper.scmを以下の場所に配置後、GIMPを起動する。- C:\Users\[username]\.gimp-2.8\scripts (Windows (Vista以降))
- ~/.gimp-2.8/scripts (Linux他)
端末の画面サイズの壁紙候補の画像をロードする
壁紙にしたい画像を読み込み、端末の画面サイズに加工する。変なAndroid壁紙サイズではなく、スペック表に書かれている画面サイズ。この場合の例は、Xperia acroなので480x854。
Script起動
メニュー項目が追加されているので、「画像>Resize for Android Wallpaper」から起動する。調整と保存
「Resize for Android Wallpaper」を実行すると、壁紙候補の画像がセンタリングされた状態で画像が大きくなる。「Wallpaper Layer」というレイヤーが追加されるので、ここに適当なパターンなりグラデーションなりを貼ればシンプルな壁紙の完成。裏話
作る前、Androidの壁紙はホーム画面の枚数分横並びだと誤解してたから、ImageMagickでちゃちゃっとくっつければ終わりだろうと思ったんだけど、画面サイズ2倍の横幅をトータルで合うようにちょいちょいずらすだけっていうやっかいな仕様であった。(詳しく:Androidの壁紙に最適な画像サイズがわからない...助けてライフハッカー!)
横に並べることができない以上、サイドパネルの部分を何らかの部分で埋めないといけないのでinteractiveなGIMPで実装することにしたという流れがあったのであった。
おかげで、10年以上昔に書いてみようと思って書いたことがなかったScript-Fuを書けるようになった。Schemeを実用で使ったのは初めてかも。
Script-Fuの書き方
Script-Fuの書き方は、以下を読めばわかった。おれおれ Script-Fu 入門
ポイントだけ書くと、以下の感じ。
- スクリプトはfoobar.scmとして$HOME/.gimp-2.8/scriptsに配置する。
- スクリプトを配置したら、「フィルター>Script-Fu>スクリプトを再読み込み」で読み直す。
- どんな関数があるかは、「フィルター>Script-Fu>Script-Fu コンソール」でScript-Fuコンソールを起動して「参照」ボタンを押せばインクリメンタルサーチで調べられる。
- スクリプト用の関数を適当にdefineして、script-fu-register関数を呼んで登録する。メニューにも載せたい場合はscript-fu-menu-registerを呼ぶ。
- スクリプト用の関数の引数はscript-fu-registerの引数で決まる。
- どんな感じに書けばいいかはGIMP内蔵のスクリプトを読めばわかる。/usr(C:\Program Files\GIMP 2)/share/gimp/2.0/scripts にたくさんある。