VC打印问题

[复制链接]
查看11 | 回复1 | 2010-7-6 14:12:34 | 显示全部楼层 |阅读模式
CDC dc;
CPrintDialog printDlg(FALSE);
short printQuality;
printDlg.GetDefaults ();
DEVMODE *dm = printDlg.GetDevMode();
//dm->dmOrientation = DMORIENT_LANDSCAPE;
dm->dmOrientation = DMORIENT_PORTRAIT;
dm->dmFields |= DM_ORIENTATION;
//dm->dmFields |=DM_PAPERSIZE|DM_PAPERLENGTH|DM_PAPERWIDTH;
dm->dmFields |= DM_PAPERSIZE|DM_PAPERWIDTH|DM_PAPERLENGTH|DM_ORIENTATION;
printQuality=dm->dmPrintQuality;
//将打印纸大小设为自定义
//dm->dmPaperSize=NULL;
//dm->dmPaperSize=DMPAPER_A4;
dm->dmPaperSize=DMPAPER_USER;
//定义打印纸的长宽
dm->dmPaperLength=Orient.Size.y*10;
dm->dmPaperWidth=Orient.Size.x*10+50;
//dm->dmPelsHeight = 2204;
//dm->dmPelsWidth = 1974;
//DWORD dw2 = dm->dmPelsHeight;
dc.Attach(printDlg.CreatePrinterDC());
dc.ResetDC(dm);
dc.m_bPrinting=TRUE;
CString strTitle = _T("555");
strTitle.LoadString (AFX_IDS_APP_TITLE);
strTitle = _T("发货单打印");
DOCINFO di; // DOCINFO中有相关的打印信息
::ZeroMemory (&di, sizeof (DOCINFO));
di.cbSize = sizeof (DOCINFO);
di.lpszDocName = strTitle;//设置标题
if(dc.StartDoc(&di)==-1)// 开始打印
{
//CString strReadFileError = _T("StartDoc error!");
CString strReadFileError = _T("连接打印机错误!");
CString strTile = _T("发货单打印");
MessageBox(strReadFileError,strTile);
//MessageBox(_T("StartDoc error"));
return ;
}
int horze=dc.GetDeviceCaps (HORZRES);
int vertical=dc.GetDeviceCaps (VERTRES);
//DWORD dw = dm->dmPelsHeight;
{
{
//加入修改信息的语句
dc.StartPage();
//rato=float(printQuality)/25.4;
//m_bitmapRect.bottom =m_bitmapRect.top+int(Orient.Size.y *rato);
Draw(&dc,&m_bitmapRect);
dc.EndPage();
}
}
dc.EndDoc();
dc.DeleteDC();
打印不到纸张的底边怎么回事???
就是这个操作员打印不出来

回复

使用道具 举报

千问 | 2010-7-6 14:12:34 | 显示全部楼层
再好的打印机都会有一个边的。不是程序的问题。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行