vb.net 取图片一个坐标点的颜色后如何将这个颜色转换为216网页安全色?

diyager 2009-05-25 09:50:54
网页安全色:
网络安全色是当红色(Red)、绿色(Green)、蓝色(Blue)颜色数字信号值(DAC Count)为0、51、102、153、204、255时构成的颜色组合,它一共有 6 * 6 * 6 = 216 种颜色(其中彩色为210种,非彩色为6种)。


Dim bmp As Bitmap
bmp = New Bitmap(Me.PictureBox1.Image)

With bmp
Dim pixel As System.Drawing.Color
pixel = .GetPixel(10, 10)


'输出后得到html颜色#FF87A7
'win32颜色:10979327
'rgb color信息:[A=255, R=255, G=135, B=167]

'问题:#FF87A7如何转换为最接近的216安全色?比如ff9999

'参考:与#FF87A7相近的安全色有#ff9999
'#ff9999的win32颜色值为10066431
'rgb color信息:[A=255, R=255, G=153, B=153]


Me.RichTextBox1.Text = '??

End With
...全文
168 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
diyager 2009-05-26
  • 打赏
  • 举报
回复
我尝试了,但是取到的颜色值的整形比较中,发现很多不接近,216安全色中没有靠近的数值。但肉眼比较确是有相似的,我怀疑不能用数字直接比较了
joeandlily 2009-05-26
  • 打赏
  • 举报
回复
把216个眼色计算出来,排序,放到数组里。
循环比较,找到最接近的。
diyager 2009-05-25
  • 打赏
  • 举报
回复
顶二
diyager 2009-05-25
  • 打赏
  • 举报
回复
顶一下

16,554

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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