Danke Andrea, das mit dem Memory Device Context.
Aber in deinem Quellcode will ich an der Stelle mit deinem Kommentar „/////Zeichnen“ lediglich eine einzige Linie ziehen.
Es tut aber nicht.
Meine andere Frage ist:
Hat irgend jemand einen Algorithmus um Objekte in einem 24-Bit-RGB-Bitmap zu segmentieren? Bin für jede Hilfe dankbar.
*handschüttel&schulterklopf*
Hier ist mal mein Quellcode fuer das dämliche zeichnen in einen Memory Device Context:
void CPictureViewerDlg:nButtonSchaerfen()
{
// TODO: Add your control notification handler code here
if( m_bmpQuelle.m_hObject == NULL || m_bmpZiel.m_hObject == NULL )
return;
CDC *dc = GetDC();
BITMAP info;
m_bmpZiel.GetBitmap( &info );
CDC memDCZiel;
memDCZiel.CreateCompatibleDC( dc );
CBitmap *oldbmpziel = memDCZiel.SelectObject( &m_bmpZiel );
// paint in the memory device context
// this will not be done!!!
CPen newpen;
newpen.CreatePen( PS_SOLID, 5, RGB( 0, 255, 0 ) );
CPen *oldpen = memDCZiel.SelectObject( &newpen );
memDCZiel.MoveTo( 0, 100 );
memDCZiel.LineTo( 100, 100 );
dc->BitBlt( m_rectZiel.left, m_rectZiel.top, info.bmWidth, info.bmHeight, &memDCZiel, 0, 0, SRCCOPY );
memDCZiel.SelectObject( oldpen );
// draw direct on the screen
// this works
oldpen = dc->SelectObject( &newpen );
dc->MoveTo( 0, 100 );
dc->LineTo( 100, 100 );
dc->SelectObject( oldpen );
memDCZiel.SelectObject( oldbmpziel );
memDCZiel.DeleteDC();
return;
}