如何批量读取bmp图片的原始高和宽

如何批量读取bmp图片的原始高和宽,第1张

bat和cmd无法直接读取的宽高数据的,但可以用bat或cmd调用插件dll来读取(双击运行,所得的结果文件为PicSizetxt,奇数行为宽度,偶数行为高度)。

小软件来读取就很多了。

用Office的vba宏命令也能读取。

位深为1的bmp图,一般是有要有颜色表的,没有时用黑白色代替。

数据保存是1位为一个像素点。

要使用左移位右移位运算。

比如读出一个字节

a

byte p = (a>>7);//就是第一个像素点的颜色索引。再颜色表中找出对应的颜色就行了。

p=((a<<1)>>6);//这就是第二个像素点了

同理可以得到其他的像素点

'估计你是要读取BMP位图上各点的三原色。

'获取像素的三原色值

'添加三个Label1控件,一个Picture控件,并加载一张。

Private Sub Picture1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)

c = Picture1Point(X, Y)

b = c \ 65536

g = (c Mod 65536) \ 256

r = c Mod 256

Label1Caption = r '红

Label2Caption = g '绿

Label3Caption = b '蓝

End Sub

文件中的数据,本身就是点阵。比如bmp格式的文件头偏移12h~15h是宽度,偏移16h~19h是高度,图像部分的数据,就是按这尺寸记录着每个像素点。

建议装个UltraEdit工具,对文件的结构进行分析,或在网上搜搜关于图像数据结构方面的资料,自然,你就对的数据心中了然的了。

以上就是关于如何批量读取bmp图片的原始高和宽全部的内容,包括:如何批量读取bmp图片的原始高和宽、C语言读取1位的BMP图、请高手指点:怎么用VB来实现读出BMP位图的数据!等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/web/9526960.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-29
下一篇2023-04-29

发表评论

登录后才能评论

评论列表(0条)

    保存