绝对坐标,以毫米为单位,如何转换成以像素为单位

AlbortEinstein 2006-03-10 09:51:55
如果以窗口客户区为原点,x方向向右,y方向向下,就象正常的屏幕坐标一样,一个点的绝对坐标是(1000,800)毫米,请问我怎么计算得到x1,y1以像素为坐标。
...全文
328 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
sagitta730 2006-03-10
  • 打赏
  • 举报
回复
DPIX = GetDeviceCaps(pDC->m_hDC,LOGPIXELSX);
1000*DPIX/72
计算过程最好用浮点数
菜牛 2006-03-10
  • 打赏
  • 举报
回复
计算过程要用浮点数,最后再转换成整数,以保证精度。
菜牛 2006-03-10
  • 打赏
  • 举报
回复
用GetDeviceCaps(hdc, LOGPIXELSX、LOGPIXELSY)可以得到1逻辑英寸的像素数,英寸到毫米的转换是1英寸对应25.4毫米。
lisypro 2006-03-10
  • 打赏
  • 举报
回复
pdc->dptolp
teli_eurydice 2006-03-10
  • 打赏
  • 举报
回复
lptodp
teli_eurydice 2006-03-10
  • 打赏
  • 举报
回复
pdc->dptolp
灿烂李 2006-03-10
  • 打赏
  • 举报
回复
#include "UnitConversion.h"
灿烂李 2006-03-10
  • 打赏
  • 举报
回复
int fontheight = CUnitConversion::PointsToPixels(GetFontSize());//象素单位

15,979

社区成员

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

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