2007-01-28

GDI+ の謎 その2

前回に続き今回もGDI+の謎についてのおはなし。

MFCとGDI+を併用すると、謎のコンパイルエラーに遭遇することがある。具体的には、newを使ってBitmapを生成しようとしたりするとC2660等のエラーが発生する。散々悩んだ挙句KB317799にたどり着いた。

要するにMFCでDEBUG_NEWを有効にするとコンパイルエラーが発生するらしい


2007-01-14

GDI+ の謎

GDI+ については、2006-09-12に軽く触れたが、もう少し使う機会があったのでメモしておく。

Bitmapクラスで256色のPNGを読み込みSetpixelを実行するとInvalidParameterで失敗した。

散々悩んだ挙句、MSDNのGraphics::FromImageの説明内に以下の記述を発見した。

This method also fails if the image has one of the following pixel formats: 

PixelFormatUndefined
PixelFormatDontCare
PixelFormat1bppIndexed
PixelFormat4bppIndexed
PixelFormat8bppIndexed
PixelFormat16bppGrayScale
PixelFormat16bppARGB1555

Graphicsクラスの説明なのでBitmap::Setpixelは関係無いはずだが、24bitカラーのBitmapへのSetpixelを試行したところ成功した。正直なところ訳がわからない。


This page is powered by Blogger. Isn't yours? Valid XHTML 1.0 Transitional