ファイル読み込みモジュール作成

Posted on Fri 07 November 2008 in ペイントツール

OpenCVのcvLoadImage()だとアルファ値を読んでくれないので、
libpngとzlibをつかってpng読み込みモジュールを作った

f:id:hiroki0:20081107221654p:image ↑cvLoadImage()で読み込み、わかりづらいが、アルファ値が読まれていない。
f:id:hiroki0:20081107221655p:image ↑libpngで読み込みアルファ値が読まれている。

ついでにThe Independent JPEG Group\'s JPEG softwareのjpegライブラリを使って、
ファイル読み込みモジュールを作成。

cvLoadImage()だと読めない、jpegファイルがあるのだが、このモジュールを使えば読み込めるようになった。

[The Independent JPEG Group\'s JPEG software]{style="font-weight:bold;"}
http://www.ijg.org/
[libpng]{style="font-weight:bold;"}
http://www.libpng.org/pub/png …


Continue reading

photoshopのブラシデータのフォーマット(2)

Posted on Fri 11 July 2008 in ペイントツール

昨日の続き

先頭から
[2byte] abrファイルのバージョン(1,2,6があるようだ)
/* ver1 or 2の場合 */
[2byte] ブラシの個数
以下最後までブラシデータの繰り返し
| [2byte] ブラシタイプ 1のときcomputedブラシ 2のときsampledブラシ
| [4byte] ブラシのサイズ
/*ブラシタイプ 1 computed brush*/
/*ブラシタイプ 2 sampled brush*/
| [6byte] 不要なデータ
| [4byte] 名前のサイズ
| 
| ・
| ・ 名前データ 名前のサイズ分だけ
| ・
| 
| [9byte] 不要なデータ
| [4byte] ブラシの領域の上辺の値
| [4byte] ブラシの領域の左辺の値
| [4byte] ブラシの領域の下辺の値
| [4byte] ブラシの領域の右辺の値
| [4byte] ブラシのデータ深度
| [1byte] 圧縮有りか無しか
以下ver 6と同様
/* 圧縮無しの場合 …

Continue reading

photoshopのブラシデータのフォーマット

Posted on Thu 10 July 2008 in ペイントツール

photoshopのブラシデータのフォーマットを調べてみることにした。
なかなか説明がのっているサイトが無いので拾ったC言語ソースから、調べることにした。
値の格納法はビッグエンディアンなのでリトルエンディアンへ変換しないといけない。

ファイル先頭から次のようになっている。
[2byte] abrファイルのバージョン(1,2,6があるようだ)
/* ver6の場合 */
[2byte] subversion(6.xのxの部分、6.1と6.2があるようだ)
[1byte][1byte][1byte][1byte] "8BIM" になっていなければならない
[1byte][1byte][1byte][1byte] 8BIMtagの名前 ヌル文字は入ってないので注意
[4byte] セクションサイズ この後からファイルの末尾までのファイルサイズ
以下最後までブラシデータの繰り返し
| [4byte] ブラシサイズ ブラシデータのサイズ
| [37byte] 不要なデータ
| [10 or 264 byte] 不要なデータ 6.1の場合は10byte 6 …

Continue reading