1.物理分辨率(dpi,是指监视器在水平或垂直方向上每英寸内可现实的*点数*)
  问:这里的点数为何意?(点数等于象素吗?象素又是什末?)
2.CRect rect;
  GetClientRect(&rect);
  dc.SetMapMode(MM_ANISOTROPIC);
 *dc.SetWindowExt(500,500);
 *dc.SetViewportExt(rect.Width(),rect.Height());
  dc.Ellipse(0,0,500,500);
  我对*的理解是:
        SetWindowExt(500,500) 为设置逻辑单位500高,500宽.
        SetViewportExt(rect.Width(),rect.Height())为视口上以象素为单位
        rect.Width()高,rect.Height()宽.
  可显然又不通.望老师教我.

解决方案 »

  1.   

    *dc.SetWindowExt(500,500);
     *dc.SetViewportExt(rect.Width(),rect.Height());
     上面两句,是设定比例因子的大小。 *dc.SetWindowExt(500,500);设定 了窗口的大小为500个路基逻辑单位高,和500个逻辑单位宽.
      逻辑单位转化为设备单位的公式
       X比例因子=X视口范围/X窗口范围
       Y比例因子=Y视口范围/Y窗口范围
       
       设备X=逻辑X * X 比例因子 + X 坐标原点偏移量
       设备Y=逻辑Y * Y 比例因子 + Y 坐标原点偏移量