опубликован 13-11-2001 12:53 MSK
Привет всем!
Имеется функция, след. вида: void func(CDC* pDC); Которая рисует, например, круг :-). Надо картинку скопировать в буфер и сохранить в файл (BMP, Jpeg, Gif).
Копирование я делаю так:void CopyToClipboard(CDC *pDC)
{
CDC dc;
dc.CreateCompatibleDC(pDC);
dc.SetMapMode(MM_LOMETRIC);
CBitmap bmp;
CSize size(m_InitSize.cx, -m_InitSize.cy);
dc.LPtoDP(&size);
bmp.CreateCompatibleBitmap(pDC, size.cx, size.cy);
dc.SelectObject(&bmp);
m_ptSavedStart = m_ptStart;
m_ptStart = CPoint(0, 0);
func(&dc);
m_ptStart = m_ptSavedStart;
tagSTGMEDIUM data;
COleDataSource *pOleData = new COleDataSource;
data.tymed = TYMED_GDI;
data.hBitmap = HBITMAP(bmp);
pOleData->CacheData(CF_BITMAP, &data);
pOleData->SetClipboard();
}
Этот код работает в 9Х, но в 2К paintbrush пишет что "Error read data" :-(, так что это вопрос номер раз,
а вопрос номер два - это как сохранить всё это в файл?
С уважением, Yuri