Warna asli (24-bit) di Wikipedia dijelaskan sebagai bagian yang terkait
24 bit hampir selalu menggunakan 8 bit dari masing-masing R, G, B. Pada 2018, kedalaman warna 24-bit digunakan oleh hampir setiap komputer dan tampilan telepon dan sebagian besar format penyimpanan gambar. Hampir semua kasus di mana ada 32 bit per piksel berarti 24 digunakan untuk warna, dan 8 sisanya adalah saluran alfa atau tidak digunakan.
2 24 menghasilkan 16.777.216 variasi warna. Mata manusia dapat membedakan hingga sepuluh juta warna [10] dan karena gamut layar lebih kecil dari kisaran penglihatan manusia, ini berarti ini harus mencakup kisaran itu dengan lebih detail daripada yang dapat dirasakan. ...
...
Sistem Macintosh menyebut warna 24-bit sebagai "jutaan warna". Istilah "True color" kadang-kadang digunakan untuk arti apa yang disebut artikel ini "warna langsung". [13] Ia juga sering digunakan untuk merujuk pada semua kedalaman warna yang lebih besar atau sama dengan 24.
Semua 16.777.216 warna
Tugas
Tulis sebuah program yang menghasilkan dan mengembalikan semua 16.777.216 variasi warna dalam sebuah array sebagai string dalam rgb()
fungsi CSS
5.1. Fungsi RGB:
rgb()
danrgba()
The
rgb()
Fungsi mendefinisikan warna RGB dengan menentukan saluran merah, hijau, dan biru secara langsung. Sintaksnya adalah:rgb() = rgb( <percentage>{3} [ / <alpha-value> ]? ) | rgb( <number>{3} [ / <alpha-value> ]? ) <alpha-value> = <number> | <percentage>
Tiga argumen pertama menentukan saluran merah, hijau, dan biru warna, masing-masing.
0%
mewakili nilai minimum untuk saluran warna dalam gamut sRGB, dan100%
mewakili nilai maksimum. A<number>
sama dengan a<percentage>
, tetapi dengan rentang yang berbeda:0
sekali lagi mewakili nilai minimum untuk saluran warna, tetapi255
mewakili maksimum. Nilai-nilai ini berasal dari fakta bahwa banyak mesin grafis menyimpan saluran warna secara internal sebagai satu byte, yang dapat menyimpan bilangan bulat antara 0 dan 255. Implementasi harus menghormati ketepatan saluran sebagaimana ditulis atau dihitung sedapat mungkin. Jika ini tidak memungkinkan, saluran harus dibulatkan ke nilai terdekat pada presisi tertinggi yang digunakan, mengumpulkan jika dua nilai sama-sama dekat.Argumen terakhir, the
<alpha-value>
, menentukan alfa warna. Jika diberikan sebagai a<number>
, kisaran nilai yang berguna adalah0
(mewakili warna yang sepenuhnya transparan) hingga1
(mewakili warna yang sepenuhnya buram). Jika diberikan sebagai,0%
mewakili warna sepenuhnya transparan, sementara100%
mewakili warna sepenuhnya buram. Jika dihilangkan, defaultnya adalah100%
.Nilai di luar rentang ini tidak valid, tetapi dijepit ke rentang yang ditentukan di sini pada waktu nilai-dihitung.
Untuk alasan sebelumnya,
rgb()
juga mendukung sintaks alternatif yang memisahkan semua argumennya dengan koma:rgb() = rgb( <percentage>#{3} , <alpha-value>? ) | rgb( <number>#{3} , <alpha-value>? )
Juga karena alasan warisan, suatu
rgba()
fungsi juga ada, dengan tata bahasa dan perilaku yang identik dengannyargb()
.
atau #RRGGBB
format notasi heksadesimal RGB
5.2. Notasi heksadesimal RGB:
#RRGGBB
Notasi warna heks CSS memungkinkan warna ditentukan dengan memberikan saluran sebagai angka heksadesimal, yang mirip dengan bagaimana warna sering ditulis langsung dalam kode komputer. Ini juga lebih pendek daripada menulis warna yang sama dalam
rgb()
notasi.Sintaks dari a
<hex-color>
adalah<hash-token>
token yang nilainya terdiri dari 3, 4, 6, atau 8 digit heksadesimal. Dengan kata lain, warna heksa ditulis sebagai karakter hash, "#", diikuti oleh beberapa angka 0-9 atau huruf af (huruf huruf tidak masalah -#00ff00
identik dengan#00FF00
).Jumlah digit hex yang diberikan menentukan cara mendekode notasi hex menjadi warna RGB:
6 digit
Pasangan digit pertama, ditafsirkan sebagai angka heksadesimal, menentukan saluran merah warna, di mana
00
merupakan nilai minimum danff
(255 dalam desimal) mewakili maksimum. Pasangan digit berikutnya, ditafsirkan dengan cara yang sama, menentukan saluran hijau, dan pasangan terakhir menentukan biru. Saluran alfa warna sepenuhnya buram.CONTOH 2
Dengan kata lain,#00ff00
mewakili warna yang sama denganrgb(0 255 0)
(hijau limau).
Lihat Draf Editor Modul Warna CSS Level 4
Contohnya
rgb()
Fungsi CSS ( karakter spasi dapat diganti dengan karakter koma, misalnya, rgb(0 255 0)
)
// `rgb()` `<percentage>` as strings in resulting array
['rgb(0%,0%,0%)', ...,'rgb(0%,255%,0)', ...'rgb(255,255,255)']
// `rgb()` `<number>` as strings in resulting array
['rgb(0,0,0)', ...,'rgb(0,255,0)', ...'rgb(255,255,255)']
CSS RGB notasi heksadesimal RRGGBB
// RGB hexadecimal notation as strings in resulting array
['#000000', ...,'#00ff00', ...'#ffffff']
Kriteria menang
Bit terkecil digunakan untuk menulis program.