最近在用Qt打印波形的时候,发现一个有趣的东西。
当我设置画笔和笔刷后,画出来的颜色总是不尽人意,甚至可以说丑,但Qt里的颜色也也就几种,比如Qt::blue ,Qt::black, Qt::white等等,发现都不是我想要的。
当我看到别人用四位十六进制代码来代替这些时,是不是可以用代码选择自己喜欢的颜色,但是我上网看了下,颜色的代码都只有三个,比如绿色:#33ff00,我不知道哪来的四位代码,于是我试着改变四个代码中的第一个,而后面三个则填一种颜色的三位代码,结果发现颜色变了,发现不管前面怎么变,颜色都是无色。所以我换了另一种方法,我改变第四位代码,前面填一种颜色的三位代码,随着我逐渐增大最后一位代码,有趣的事情发生了,颜色是这样变化的:
QColor(0x33,0x00,0xff,0x11)
QColor(0x33,0x00,0xff,0x33)
QColor(0x33,0x00,0xff,0x55)
QColor(0x33,0x00,0xff,0x77)
QColor(0x33,0x00,0xff,0xaa)
QColor(0x33,0x00,0xff,0xcc)
QColor(0x33,0x00,0xff,0xff)
发现了吧,随着第四位十六进制代码的增大,颜色逐渐变得实,变的深,一开始改第一个代码无论怎么改结果颜色都是无色的原因是第四位代码总是0x00,所以颜色是完全透明的。之后我又试了别的颜色,无一例外,都一样,所以可以说,控制颜色的代码,前三位是颜色的三原色代码,最后一位则是可控制透明度的。
这里我给一个RGB网页颜色在线取色器,可以方便大家选择自己喜欢的颜色的同时,知道其三位十六进制代码。
RGB网页颜色在线取色器