[Message Prev][Message Next][Thread Prev][Thread Next][Message Index][Thread Index]
[MD:2916]ImageMagick stub memo
- X-ml-count: 2916
- Subject: [MD:2916]ImageMagick stub memo
- From: MIYASHITA Hisashi(宮下 尚:HIMI) <himi@xxxxxxxxxxx>
- Date: Tue, 29 Jan 2002 01:01:09 +0900
- User-agent: T-gnus/6.15.4 (based on Oort Gnus v0.04) (revision 11) SEMI/1.14.3 (Ushinoya) FLIM/1.14.2 (Yagi-Nishiguchi) APEL/10.3 Emacs/21.1 (i386-msvc-nt5.1.2600) MULE/5.0 (SAKAKI) Meadow/1.99 Alpha1 (AWOFUCHI)
北口さんへのメモ
(1) するべきこと
ImageMagickによって、imageをCreateDIBSectionが解釈可能な
BITMAPINFO + BITMAPDATAに展開する。
(2) 大まかな流れ
CloneImageInfo -> ReadImage(in file) or BlobToImage(in memory)
-> GetImagePixels -> GetPixels
-> DestroyImageInfo -> DestroyImage
(3) 最低限setしなくてはならないmember
img->height
img->width
img->mw32_img.pbmpinfo (RGBQUADが含まれることに注意)
img->mw32_img.size (pbmpdataのサイズ)
img->mw32_img.pbmpdata (bitmapのデータ)
(4) 色についての注意
Image.total_colorsが、0xFFFFより大きい場合、RGBQUADは作らず、
full colorで処理。 0xFFFFより小さい場合は、RGBQUADを作り、indexで
初期化。PixelPacketの該当memberで、mw32_imgのpbmpdataを埋める。
(A) 注意
かならず、ImageMagickのlibraryとは動的にlinkすること。export libraryの
使用は禁止。init.時にLoadLibrary & GetProcAddressを使用。失敗した場合には
ImageMagickの使用をあきらめる。
(B) 補足
imageのさまざまなkeyworkによって、ImageMagickの処理を変化させるのも
楽しいかも。
from himi