打印问题

ksk 2003-08-23 07:22:23
BOOL CPrintView::OnPreparePrinting(CPrintInfo* pInfo)
{
CWinApp *app=AfxGetApp();
app->GetPrinterDeviceDefaults(&pInfo->m_pPD->m_pd);

DEVMODE* lpDevMode;
lpDevMode=pInfo->m_pPD->GetDevMode();
ASSERT( lpDevMode!=NULL );
lpDevMode->dmPaperSize = DMPAPER_USER; //设定为自定义纸张尺寸
lpDevMode->dmFields |= DM_PAPERSIZE; //允许重新设置纸张大小
lpDevMode->dmPaperLength = 1400; //设定纸长为 14 厘米
lpDevMode->dmPaperWidth=1900;//宽19厘米
lpDevMode->dmFields |= -1;
pInfo->SetMaxPage(1);
return DoPreparePrinting(pInfo);
}

void CPrintView::OnPrepareDC(CDC* pDC, CPrintInfo* pInfo)
{
pDC->SetMapMode(MM_LOMETRIC);
CFormView::OnPrepareDC(pDC, pInfo);
}
设置映谢模式为MM_HIMETRIC,x向右增加,y向上增加(向下为负),单位0.01厘米,但是
void CPrintView::OnPrint(CDC* pDC, CPrintInfo* /*pInfo*/)
{
pDC->TextOut(200,-200,"剑河");

}
不在打印区域。这是会什么?
...全文
33 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
yuanl 2003-08-28
  • 打赏
  • 举报
回复
pDC->TextOut(200,-200,"剑河");

将-200改为正值。
zjg751206 2003-08-28
  • 打赏
  • 举报
回复
pDC->TextOut(200,-200,"剑河");
这么负的值肯定不在打印区域,改为正的试试

15,980

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧