各位高手:
有一个问题请大家帮帮忙,
碰到这样的一个问题,在OnDraw函数中要输出一个位图,
本程序用Wizzard建立一个工程,
然后在位图中插入任一个位图资源,程序执行后能在屏幕上显示,
但死活不能输到打印机上,即在打印机上打不出图形,不知是何故,
不知各位高手碰到过没有,
请高手帮忙,先表示诚挚的谢意!另打印机的设置应该没有问题,打印时文字能打出(比如此段中的“I Love U”)。void CTestView::OnDraw(CDC* pDC)
{
CTestDoc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
CBitmap bmp;
CDC MemDC;
pDC->TextOut(300,-600,"I Love U");
if(!(bmp.LoadBitmap(IDB_Icon)))
MessageBox("bmp is not OK!\n");
MemDC.CreateCompatibleDC(pDC);
CBitmap* pOldBitmap=MemDC.SelectObject(&bmp);
BITMAP bm;
bmp.GetObject(sizeof(BITMAP),&bm);
pDC->StretchBlt(300,-500,bm.bmWidth*3,-bm.bmHeight*3,&MemDC,0,0,bm.bmWidth,bm.bmHeight,SRCCOPY);
// pDC->BitBlt(300,-500,bm.bmWidth,bm.bmHeight,&MemDC,0,0,SRCCOPY);
MemDC.SelectObject(pOldBitmap);
MemDC.DeleteDC();
bmp.DeleteObject();
// TODO: add draw code for native data here
}
有一个问题请大家帮帮忙,
碰到这样的一个问题,在OnDraw函数中要输出一个位图,
本程序用Wizzard建立一个工程,
然后在位图中插入任一个位图资源,程序执行后能在屏幕上显示,
但死活不能输到打印机上,即在打印机上打不出图形,不知是何故,
不知各位高手碰到过没有,
请高手帮忙,先表示诚挚的谢意!另打印机的设置应该没有问题,打印时文字能打出(比如此段中的“I Love U”)。void CTestView::OnDraw(CDC* pDC)
{
CTestDoc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
CBitmap bmp;
CDC MemDC;
pDC->TextOut(300,-600,"I Love U");
if(!(bmp.LoadBitmap(IDB_Icon)))
MessageBox("bmp is not OK!\n");
MemDC.CreateCompatibleDC(pDC);
CBitmap* pOldBitmap=MemDC.SelectObject(&bmp);
BITMAP bm;
bmp.GetObject(sizeof(BITMAP),&bm);
pDC->StretchBlt(300,-500,bm.bmWidth*3,-bm.bmHeight*3,&MemDC,0,0,bm.bmWidth,bm.bmHeight,SRCCOPY);
// pDC->BitBlt(300,-500,bm.bmWidth,bm.bmHeight,&MemDC,0,0,SRCCOPY);
MemDC.SelectObject(pOldBitmap);
MemDC.DeleteDC();
bmp.DeleteObject();
// TODO: add draw code for native data here
}
我用的是LOMETRIC模式,应该怎样作呀,急死我了,我已经困惑一个星期了。
应该是这个吧……