我在視圖的 OnDraw 中用 pDC->SetMapMode(MM_HIMETRIC); 改變映像模式在屏幕上顯示正常,但在 PrintPreview 中就不正常了,打印時也不正常, 只有當
pDC->SetMapMode(MM_TEXT); 時才正常, 請問該怎么辦? (主要是我想提高精度)
pDC->SetMapMode(MM_TEXT); 時才正常, 請問該怎么辦? (主要是我想提高精度)
解决方案 »
- socket 完成端口 Accept?
- 如何让鼠标移到按钮上时显示提示信息
- web服务中线程执行cgi写文件超过100k有问题
- 打开excel2000文件出错,帮帮我啊,急
- main函数在中while(1)后面 程序段能否得到执行机会
- GetStockObject(HOLLOW_BRUSH) 屏蔽了 pStatic->SetBitmap() ?
- 怎么从窗口句柄得到进程的id?
- 菜鸟是天下最可爱的人,但最可爱的并不只有菜鸟,还有我们的白衣天使啊
- 关于漂亮菜单问题
- 绝对送分,在VC++中怎么显示"%"字符!
- 一个关于应用程序图标的问题
- 有没有搞过smart card开发的兄弟?100分求COS参考手册!随便哪个公司的都行!
s1.cy = pDC->GetDeviceCaps(VERTRES) ;
s2.cx = pDC->GetDeviceCaps(HORISIZE)*10 ;
s2.cy = pDC->GetDeviceCaps(VERZSIZE)*10 ;pDC->SetViewportExt(S1.cx, s1.cy) ;
pDC->SetWindowExt(s2.cx, s2.cy) ;
用 MM_HIMETRIC 模式, 另加100 分
我说的这种模式的X向右为正,Y向下为正,
而MM_HIMETRIC 为X向右为正,Y向上为正,所以你可能看不到任何东西,改一下图形的坐标值就可以了如果精度要到0.01 改成*100 就可以了
pDC->SetMapMode(MM_HIMETRIC);
pDC->TextOut(1000, -1000, "sth");pDC->MoveTo(1000, -2000);
pDC->LineTo(30000, -2000);不可能出问题吧?另外建议使用MM_LOMETRIC,因为这些取值不能大于32767的。
你是说 把字体的高转化为 MM_HIMETRIC 作单位的值 就可以了,那么宽度要不要改? 刚才我试了下 ,那些值可以大于32767