xcur2pngをリリース

tksmashiw2008-07-26

Here is English translation.


コードそのものより、GNU autoconfや文書類の作成に時間がかかってしまったが、xcur2pngをリリースした。
cli-apps.orgからダウンロードできる。

このプログラムはX11マウスカーソルの各フレームをPNG画像に変換して出力し、同時にxcursorgenで再利用できるconfigファイルを出力するプログラムだ。このプログラムとxcursorgenを利用することで、既存のXカーソルから画像を取り出し、変更を加えて再度Xカーソルに変換する事が出来る。ライセンスはGPLv3とする。


利用例:
CursorXP/FX to X11 Mouse Theme Converterで作成したカーソルはgnome-appearance-properties(GNOMEの「外観の設定」ダイアログ)に表示されない。これはXのマウスカーソルのサイズについてで指摘したように、left_ptrが{12,16,24,32,36,40,48,64}のいずれかのサイズになっていないからである。これを修正する例としてVienna3をあげる。


$ []wget 'http://fc02.deviantart.com/fs26/f/2008/165/1/d/J_Aroche__s_Vienna3_Converted_by_s0ury.zip'[]
$ []unzip J_Aroche__s_Vienna3_Converted_by_s0ury.zip[]
$ []ls[]
[]Vienna3.tar.gz[] []...省略...[]
$ []tar -zxf Vienna3.tar.gz -C ~/.icons/[]
[]~/.icons/以下に展開。ここまでは「外観の設定」からインストールしても同じ[]
$ []mkdir work; cd work[]  []作業ディレクトリに移動[]
$ []xcur2png ~/.icons/Vienna3/cursors/left_ptr[]
[]本当は「lft_ptr」は「4498f0e0c1937ffe01fd06f973665830」へのシンボリックリンクなので[]
[]「4498f0e0c1937ffe01fd06f973665830」を操作した方がいい[]
$ []ls[]
[]left_ptr.conf[] []left_ptr_011.png left_ptr_023.png left_ptr_035.png[]
[]left_ptr_000.png left_ptr_012.png left_ptr_024.png left_ptr_036.png[]
[]...以下略[]
$ []cat left_ptr.conf[]

1 7 2 left_ptr_000.png 5
1 7 2 left_ptr_001.png 5
#...省略...


$ []perl -i -pe '@^1@32@g' left_ptr.conf[]
[]カーソルのサイズを1から32へ変更[]
[]config-fileの書式については[]http://d.hatena.ne.jp/tksmashiw/20080716を参照
$ []cat left_ptr.conf[]

32 7 2 left_ptr_000.png 5
32 7 2 left_ptr_001.png 5
#...省略...


$ []mogrify -crop 32x32+0+0 left_ptr_*.png[]
[]必要では無いが画像サイズを32x32に切っておく。[]
$ []xcursorgen left_ptr.conf left_ptr[]
[]Xカーソル left_ptrを作成[]
$ []mv left_ptr.conf ~/.icons/Vienna3/cursors/left_ptr[]
[]完成したleft_ptrを元の場所へ上書き[]
これで「外観の設定」にVienna3が現れる。
ちなみにVienna3は「Button」と「03b6e0fcb3499374a867c041f52298f0」が壊れている。マウスカーソルテーマGreen Apparatusと同様の修正が必要だろう。


2008/07/27追記
Ubuntu 8.04用debパッケージを追加。一部修正。


2008/07/31追記
ダウンロード先をcli-apps.orgに変更