API reference#

pw_display: Graphic display support and framebuffer management

Color API#

group pw_display_color

Color conversion functions used by the pw_display draw library and tests.

Functions

constexpr ColorRgb565 EncodeRgb565(uint8_t r, uint8_t g, uint8_t b)#

Encode an RGB565 value from individual red, green, blue and alpha values.

This will introduce some loss in color as values are mapped from 8 bits per color down to 5 for red, 6 for green, and 5 for blue.

constexpr ColorRgb565 EncodeRgb565(ColorRgba8888 rgba8888)#

Encode an RGBA8888 value into RGB565.

constexpr ColorRgba8888 EncodeRgba8888(uint8_t r, uint8_t g, uint8_t b, uint8_t a)#

Encode an RGBA8888 value from individual red, green, blue and alpha values.

constexpr ColorRgba8888 EncodeRgba8888(ColorRgb565 rgb565)#

Encode an RGBA8888 value from RGB565.

This will scale each color up to 8 bits per pixel. Red and blue are scaled from 5 bits to 8 bits. Green from 6 bits to 8 bits. There is no alpha channel in the RGB565 format so alpha is set to 255 representing 100% opaque.

Color Constants#

pw_display/colors_pico8.h#

Constant

Color

Hex Value

pw::display::colors::rgb565::pico8::kBlack

Black

#000000

pw::display::colors::rgb565::pico8::kDarkBlue

Dark blue

#1d2b53

pw::display::colors::rgb565::pico8::kDarkPurple

Dark purple

#7e2553

pw::display::colors::rgb565::pico8::kDarkGreen

Dark green

#008751

pw::display::colors::rgb565::pico8::kBrown

Brown

#ab5236

pw::display::colors::rgb565::pico8::kDarkGray

Dark gray

#5f574f

pw::display::colors::rgb565::pico8::kLightGray

Light gray

#c2c3c7

pw::display::colors::rgb565::pico8::kWhite

White

#fff1e8

pw::display::colors::rgb565::pico8::kRed

Red

#ff004d

pw::display::colors::rgb565::pico8::kOrange

Orange

#ffa300

pw::display::colors::rgb565::pico8::kYellow

Yellow

#ffec27

pw::display::colors::rgb565::pico8::kGreen

Green

#00e436

pw::display::colors::rgb565::pico8::kBlue

Blue

#29adff

pw::display::colors::rgb565::pico8::kIndigo

Indigo

#83769c

pw::display::colors::rgb565::pico8::kPink

Pink

#ff77a8

pw::display::colors::rgb565::pico8::kPeach

Peach

#ffccaa

pw_display/colors_endesga64.h#

Constant

Color

Hex Value

pw::display::colors::rgb565::e64::kBlood

 

#ff0040

pw::display::colors::rgb565::e64::kBlack0

 

#131313

pw::display::colors::rgb565::e64::kBlack1

 

#1b1b1b

pw::display::colors::rgb565::e64::kGray0

 

#272727

pw::display::colors::rgb565::e64::kGray1

 

#3d3d3d

pw::display::colors::rgb565::e64::kGray2

 

#5d5d5d

pw::display::colors::rgb565::e64::kGray3

 

#858585

pw::display::colors::rgb565::e64::kGray4

 

#b4b4b4

pw::display::colors::rgb565::e64::kWhite

 

#ffffff

pw::display::colors::rgb565::e64::kSteel6

 

#c7cfdd

pw::display::colors::rgb565::e64::kSteel5

 

#92a1b9

pw::display::colors::rgb565::e64::kSteel4

 

#657392

pw::display::colors::rgb565::e64::kSteel3

 

#424c6e

pw::display::colors::rgb565::e64::kSteel2

 

#2a2f4e

pw::display::colors::rgb565::e64::kSteel1

 

#1a1932

pw::display::colors::rgb565::e64::kSteel0

 

#0e071b

pw::display::colors::rgb565::e64::kCoffee0

 

#1c121c

pw::display::colors::rgb565::e64::kCoffee1

 

#391f21

pw::display::colors::rgb565::e64::kCoffee2

 

#5d2c28

pw::display::colors::rgb565::e64::kCoffee3

 

#8a4836

pw::display::colors::rgb565::e64::kCoffee4

 

#bf6f4a

pw::display::colors::rgb565::e64::kCoffee5

 

#e69c69

pw::display::colors::rgb565::e64::kCoffee6

 

#f6ca9f

pw::display::colors::rgb565::e64::kCoffee7

 

#f9e6cf

pw::display::colors::rgb565::e64::kOrange3

 

#edab50

pw::display::colors::rgb565::e64::kOrange2

 

#e07438

pw::display::colors::rgb565::e64::kOrange1

 

#c64524

pw::display::colors::rgb565::e64::kOrange0

 

#8e251d

pw::display::colors::rgb565::e64::kBrightOrange0

 

#ff5000

pw::display::colors::rgb565::e64::kBrightOrange1

 

#ed7614

pw::display::colors::rgb565::e64::kBrightOrange2

 

#ffa214

pw::display::colors::rgb565::e64::kYellow0

 

#ffc825

pw::display::colors::rgb565::e64::kYellow1

 

#ffeb57

pw::display::colors::rgb565::e64::kGreen5

 

#d3fc7e

pw::display::colors::rgb565::e64::kGreen4

 

#99e65f

pw::display::colors::rgb565::e64::kGreen3

 

#5ac54f

pw::display::colors::rgb565::e64::kGreen2

 

#33984b

pw::display::colors::rgb565::e64::kGreen1

 

#1e6f50

pw::display::colors::rgb565::e64::kGreen0

 

#134c4c

pw::display::colors::rgb565::e64::kOcean0

 

#0c2e44

pw::display::colors::rgb565::e64::kOcean1

 

#00396d

pw::display::colors::rgb565::e64::kOcean2

 

#0069aa

pw::display::colors::rgb565::e64::kOcean3

 

#0098dc

pw::display::colors::rgb565::e64::kOcean4

 

#00cdf9

pw::display::colors::rgb565::e64::kOcean5

 

#0cf1ff

pw::display::colors::rgb565::e64::kOcean6

 

#94fdff

pw::display::colors::rgb565::e64::kCandyGrape3

 

#fdd2ed

pw::display::colors::rgb565::e64::kCandyGrape2

 

#f389f5

pw::display::colors::rgb565::e64::kCandyGrape1

 

#db3ffd

pw::display::colors::rgb565::e64::kCandyGrape0

 

#7a09fa

pw::display::colors::rgb565::e64::kRoyalBlue2

 

#3003d9

pw::display::colors::rgb565::e64::kRoyalBlue1

 

#0c0293

pw::display::colors::rgb565::e64::kRoyalBlue0

 

#03193f

pw::display::colors::rgb565::e64::kPurple0

 

#3b1443

pw::display::colors::rgb565::e64::kPurple1

 

#622461

pw::display::colors::rgb565::e64::kPurple2

 

#93388f

pw::display::colors::rgb565::e64::kPurple3

 

#ca52c9

pw::display::colors::rgb565::e64::kSalmon0

 

#c85086

pw::display::colors::rgb565::e64::kSalmon1

 

#f68187

pw::display::colors::rgb565::e64::kRed4

 

#f5555d

pw::display::colors::rgb565::e64::kRed3

 

#ea323c

pw::display::colors::rgb565::e64::kRed2

 

#c42430

pw::display::colors::rgb565::e64::kRed1

 

#891e2b

pw::display::colors::rgb565::e64::kRed0

 

#571c27