100分求救,照片和文字一起打印的问题,只打出文字了,没有了照片,附源代码
void CFormViewMountInfo::OnPrintMount(CDC* pDC, CPrintInfo* pInfo)
{
int nWidth=pDC->GetDeviceCaps(HORZRES); //宽度的象素
int nHeight=pDC->GetDeviceCaps(VERTRES); //高度的象素
m_ghdf = pDC->GetDeviceCaps(LOGPIXELSY); //每英寸的象素
// TODO: Add your specialized code here and/or call the base class
{
CFont font,*oldfont;
//创建字体
font.CreateFont(-GetLen(4),
0,0,0,FW_NORMAL,0,0,0,GB2312_CHARSET,
OUT_STROKE_PRECIS,CLIP_STROKE_PRECIS,DRAFT_QUALITY,
VARIABLE_PITCH|FF_SWISS,_T("黑体"));
oldfont=pDC->SelectObject(&font);
//画文字
CString strYear;
strYear.Format("%d" , m_MakeYear);
pDC->TextOut(GetLen(38) ,GetLen(9) , strYear); //车牌
pDC->TextOut(GetLen(8) ,GetLen(44.4) , m_PersonName); //姓名
pDC->TextOut(GetLen(48) ,GetLen(37) , m_MountID); //上岗证编号
pDC->TextOut(GetLen(48) ,GetLen(44) , m_CarNumber); //车牌
//释放字体
pDC->SelectObject(oldfont);
font.DeleteObject();
}
{
//画照片
CRect lRect;
m_pic.GetClientRect(&lRect);
lRect.NormalizeRect();
//获取图片格式
CDC dcMem;
dcMem.CreateCompatibleDC(pDC);
CBitmap *poldBitmap=(CBitmap*)dcMem.SelectObject(m_pic.hbmp);
m_pic.GetClientRect(&lRect);
lRect.NormalizeRect();
pDC->SetStretchBltMode(COLORONCOLOR);
//显示位图
pDC->StretchBlt(GetLen(3) ,GetLen(11) ,GetLen(23),GetLen(31.2),
&dcMem,0 ,0,m_pic.bm.bmWidth,m_pic.bm.bmHeight,SRCCOPY);
dcMem.SelectObject(&poldBitmap);
}
//CFormView::OnPrint(pDC, pInfo);
}