libpsd続き その2

libpsdで正しく画像が取得できないので検証用に自前でC++で書いてみた。ちょっと手こずったが以前pythonで書いたpsdプログラムが役に立った。pythonの方はデッドリンクになっているから直さないといかんな・・・。
で、libpsdでは何故画像が正しく取れないのかというとRLE圧縮の展開に問題があるからっぽい。
嘘デス。
libpngの使い方で出力する時に自爆してました。迂闊・・・

他にもヘッダの読み取りに失敗してこけたりもするので、libpsdはだいぶ手を入れないと実用に耐えない感触デス。
(次のエントリでlibpsdのサンプルコード書いた。)


せっかくなので、c++で書いたpsdローダをアップしてみた。
http://github.com/ousttrue/psdloader


やっつけでppm書き出しにしているので
あとでpng書き出しを追加するかも。

参考資料

丁寧に読めば必要な情報はだいたい書いてある。

http://www.fileformat.info/format/psd/egff.htm