电子行业中,以0x开头颜色表示法和以#开头的颜色表示法有什么区别?
最近遇到一些特殊的情况。我发现rgb颜色除了以#开头表示以外,还有以0x开头表示的。但是Google和百度上都找不到相关的介绍。不知道有没有从事相关研究的大哥仔细讲解两者之间的区别?
回复内容:
长懒看的请看最后一段结论。从计算机的数值表示上讲,0x开头的其实并不是所谓颜色代码的表示方法,而是16进制数的标准写法。譬如0xA就是十进制的10。
而#开头的六(或三)位十六进制数是在设计领域(如CSS以及一些绘图软件)中颜色代码的表示方法。
如果我们只考虑24位颜色的话,电脑中每个像素的颜色其实就是用3个字节(24位)的无符号整数来存储的。所以用0x开头的“颜色代码”,也就是这个十六进制数表示的数值,其实就是颜色在内存(显存)中的存储方式。
为什么不采用我们常见的10进制数而要采用0x开头的16进制数来表示颜色呢?因为在颜色这3个字节中,大家规定17-24位表示红色的分量,9-16位表示绿色的分量,1-8位表示蓝色的分量,因此一个十进制数16777215表示的颜色虽然很难给我们一个直观的感觉,而将它转换成16进制数0xFFFFFF我们就可以很轻易的看出前两位FF表示红色,中间两位FF表示绿色,后面两位FF表示蓝色。这个数值表示白色。
于是就出现了阁下熟悉的在设计领域我们就使用#开头的6位十六进制数来表示颜色的方式,这样一来,既直观又可以方便地在内存中进行转换与存储。
所以我们说#开头的六位十六进制数仅仅表示颜色,0x开头的数字表示包括颜色在内的一般数值。
于是我们就可以阐述出它们的区别:
我们知道,在十进制中0123和123是相等的两个数字,所以0x000FFF和0xFFF是相等的两个数值,也就表示相同的两个颜色。但是#000FFF和#FFF表示的却是两个不同的颜色。在CSS(以及部分绘图软件中)#后面跟3个十六进制数是被允许的,比如#ABC表示的颜色和#AABBCC表示的颜色相同。但是跟1、2、4、5个十六进制数仍然是非法的颜色代码。所以#000FFF表示蓝色掺了一点绿,#FFF即#FFFFFF表示白色,#0FFF什么都不表示,是非法的颜色代码。 楼主所说的颜色空间是RGB空间,这个颜色空间能够表示绝大多数肉眼可见的颜色。但是缺点是不好量化,因为其将色调、亮度、饱和度融在一块了。
除此之外的颜色空间还有:CMYK(青、洋红、黄、黑,用于墨盒中)、HSI(色调、饱和度、强度,用于数字化处理颜色)等。
颜色值一共6位,以16进制表示,前两位表示红色值,中间两位表示绿色值,最后两位表示蓝色值。 0xAARRGGBB
#RRGGBB
rgba(r,g,b,a) --- (00xefeff4

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Pada masa ini, empat telefon pintar Pixel baharu dijangka mendarat pada musim luruh ini. Untuk mengimbas kembali, siri ini dikhabarkan akan menampilkan Pixel 9 dan Pixel 9 Pro semasa pelancaran. Walau bagaimanapun, Pixel 9 Pro akan menjadi saingan kepada iPhone 16 Pro dan bukannya Pixel 8 Pro (curr

Google telah memperkenalkan Mod Ganti DisplayPort dengan siri Pixel 8, dan ia hadir pada barisan Pixel 9 yang baru dilancarkan. Walaupun ia terdapat terutamanya untuk membolehkan anda mencerminkan paparan telefon pintar dengan skrin yang disambungkan, anda juga boleh menggunakannya untuk desktop

Pembantu AI Google, Gemini, bersedia untuk menjadi lebih berkebolehan, jika pembongkaran APK bagi kemas kini terkini (v15.29.34.29 beta) perlu dipertimbangkan. Pembantu AI baharu raksasa teknologi itu dilaporkan boleh mendapatkan beberapa sambungan baharu. Sambungan ini wi

Google baru-baru ini bertindak balas terhadap kebimbangan prestasi mengenai Tensor G4 barisan Pixel 9. Syarikat itu berkata bahawa SoC tidak direka untuk mengalahkan penanda aras. Sebaliknya, pasukan memberi tumpuan untuk menjadikannya berprestasi baik di kawasan yang Google mahukan c

Google AI telah mula menyediakan pembangun akses kepada tetingkap konteks lanjutan dan ciri penjimatan kos, bermula dengan model bahasa besar (LLM) Gemini 1.5 Pro. Sebelum ini tersedia melalui senarai tunggu, penuh 2 juta token konteks windo

Siri Pixel 9 hampir tiba, telah dijadualkan untuk keluaran 13 Ogos. Berdasarkan khabar angin baru-baru ini, Pixel 9, Pixel 9 Pro dan Pixel 9 Pro XL akan mencerminkan Pixel 8 dan Pixel 8 Pro (sekira $749 di Amazon) dengan bermula dengan storan 128 GB.

Beberapa bulan telah berlalu sejak Pihak Berkuasa Android menunjukkan mod desktop Android baharu yang telah disembunyikan oleh Google dalam Android 14 QPR3 Beta 2.1. Tiba di hadapan Google menambah sokongan Mod Alt DisplayPort untuk Pixel 8 dan Pixel 8

Lebih banyak bahan promosi yang berkaitan dengan siri Pixel 9 telah bocor dalam talian. Sebagai rujukan, kebocoran baharu itu tiba sejurus selepas 91mobiles berkongsi berbilang imej yang turut mempamerkan Pixel Buds Pro 2 dan Pixel Watch 3 atau Pixel Watch 3 XL. Kali ini
