如何在屏幕上画一条定长的线?(vb.net)

happylzp 2003-10-16 10:03:02
我用是VB.net,Graphics对象的属性DipX按照帮助上的解释是 对象支持的水平分辨率的值(以每英寸点数表示)。
但这个值在我的显示器的两种分辨率下1024*768和800*600下都是96,这是为什么?
我主要的目的是想通过像素点数画一条定长的线
但搞不清当前屏幕上一英寸有多少个点,
或者有其他的画法也行
...全文
60 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
zzwu 2003-10-16
  • 打赏
  • 举报
回复
通过上面的说明,不知道是否已能画一条"定长"的线?
需要说明一点,我们不能要求程序能在任何尺寸的显示器上自动产生相同定长的线,因为显示器"尺寸"信息是无法用程序检测出来的.能做到的只是在同一显示器的不同分辨率下产生同样长度的线.
zzwu 2003-10-16
  • 打赏
  • 举报
回复
由于显示器的屏幕尺寸用对交线长度来衡量,且显示器的宽长比一般都是4:3,所以“一英寸有多少个点”可以根据显示器的屏幕尺寸和设置的分辨率自己算出来。
如:15英寸显示器,宽为15*(4/5)=12英寸,高为15*(3/5)=9英寸,如果设置分辨率为800 * 600,则意味水平方向12英寸中有800个像素(或者垂直方向9英寸中有600个像素,二者比例一致),即可精确算出每1英寸中有800/12=600/9=66个像素。如果换成14寸,分辨率不变,则每1英寸中有近72个像素,如果显示器不变,仍为15寸,但分辨率提高为1024,则每1英寸中有85个像素,等等。

你说的“都是96”我想一定是弄错了概念,例如,是否可能把打印机的分辨率当作屏幕分辨率了?
zzwu 2003-10-16
  • 打赏
  • 举报
回复
“一英寸有多少个点”这不但要看设置的分辨率,还要看显示器的屏幕尺寸。大尺寸的显示器一英寸显然有较少个数的点。

4,446

社区成员

发帖
与我相关
我的任务
社区描述
图形图像/机器视觉
社区管理员
  • 机器视觉
  • 迪菲赫尔曼
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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