M
hallo,
mal wieder hab ich ein kleines problem und hoffe das ihr mir helfen koennt:
Pen penGreen(Color(0,255,0));
HDC hIC = CreateDC(TEXT("DISPLAY"),NULL,NULL,NULL);
SolidBrush sldBrush_White(Color(255, 255, 255));
HBITMAP hBM = CreateCompatibleBitmap(hIC, 4000, 4000);
SelectObject(hIC, hBM);
Graphics gdiGraphic(hIC);
gdiGraphic.FillRectangle(&sldBrush_White, 0, 0, 4000, 4000);
if (iCountOptLinePoints > 0)
{
gdiGraphic.DrawClosedCurve(&penGreen,pOptLinePoints,iCountOptLinePoints);
}
CLSID pngClsid;
GetEncoderClsid(L"image/png", &pngClsid);
Bitmap bitmap(hBM,NULL);
bitmap.Save(L"screen.png", &pngClsid);
DeleteObject(hBM);
DeleteDC(hIC);
der obere quelltext sollte eigentlich ein bild speichern. speichert auch ein bild aber leider ein schwarzes. wenn ich direkt mit setpixel auf das bitmap pixel schreibe werden sie richtig im bild angezeigt. nur die funktion gdiGraphic.DrawClosedCurve wird nicht angezeigt. definitiv wird aber die funktion aufgerufen und es sind auch gueltige werte drin, die werden auch bei der ausgabe auf den bildschirm genutzt.
danke fuer eure hilfe und ideen.
msp