我已经获取了打印机的DC我这样做了初始化: m_DC.SetMapMode(MM_ISOTROPIC);
CSize size = CSize(140, 120); m_DC.SetWindowExt(size); //得到实际设备每逻辑英寸的象素数量     
int xLogPix = m_DC.GetDeviceCaps(LOGPIXELSX);     
int yLogPix = m_DC.GetDeviceCaps(LOGPIXELSY);
    //得到设备坐标和逻辑坐标的比例     
int xExt = size.cx * xLogPix/72;     
int yExt = size.cy * yLogPix/72;     
//确定视口大小     
m_DC.SetViewportExt(xExt,yExt); 按理说当我在运用的时候
        CRect rect(0, 0, 139, 119);
m_DC.LPtoDP(&rect);
m_DC.Rectangle(&rect);这样能绘制一个全屏的矩形,现在的问题是这矩形太大,大过了纸张.纸张设置140*120毫米..且m_Dc.GetDeviceCaps(HORZSIZE)等已经得到了正确的纸张...我想请问一下各位,这问题出在哪里了?
没用MFC框架的打印.