找回密码
 立即注册→加入我们

QQ登录

只需一步,快速开始

搜索
热搜: 下载 VB C 实现 编写
查看: 3138|回复: 1

【VB】如何获取Picture的真实像素尺寸

[复制链接]

1110

主题

1651

回帖

7万

积分

用户组: 管理员

一只技术宅

UID
1
精华
244
威望
743 点
宅币
24221 个
贡献
46222 次
宅之契约
0 份
在线时间
2296 小时
注册时间
2014-1-26
发表于 2014-2-21 19:30:12 | 显示全部楼层 |阅读模式

欢迎访问技术宅的结界,请注册或者登录吧。

您需要 登录 才可以下载或查看,没有账号?立即注册→加入我们

×
用过VB的也许会发现一个问题,当你用LoadPicture载入一个图片文件的时候,你会得到一个Picture对象。
但是要从Picture.Width和Picture.Height这里取得图像的尺寸的时候就会发现一个问题,单位好像不是像素。
没错,单位其实是Himetric,1个Himetric单位相当于10μm(这么奇葩的单位都没有中文名!)
转换为像素单位的方法很简单,用ScaleX函数或ScaleY函数(From窗体、PictureBox控件等的成员函数)就可以实现转换。
假设我载入了窗体的背景图片:
Me.Picture = LoadPicture("D:\123.BMP")
然后我要取得Me.Picture的像素单位的宽和高,我这样取:
Dim 图片宽度 As Long, 图片高度 As Long
图片宽度 = Me.ScaleX(Me.Picture.Width, vbHimetric, vbPixels)
图片高度 = Me.ScaleY(Me.Picture.Height, vbHimetric, vbPixels)

本帖被以下淘专辑推荐:

回复

使用道具 举报

1110

主题

1651

回帖

7万

积分

用户组: 管理员

一只技术宅

UID
1
精华
244
威望
743 点
宅币
24221 个
贡献
46222 次
宅之契约
0 份
在线时间
2296 小时
注册时间
2014-1-26
 楼主| 发表于 2014-2-22 22:58:52 来自手机 | 显示全部楼层
就可以得到以像素为单位的图片尺寸了。
回复 赞! 靠!

使用道具 举报

QQ|Archiver|小黑屋|技术宅的结界 ( 滇ICP备16008837号 )|网站地图

GMT+8, 2024-4-19 02:08 , Processed in 0.035712 second(s), 31 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表