themes/
themes.rs

1use embedded_graphics::{
2    mono_font::{ascii::FONT_10X20, MonoTextStyle},
3    pixelcolor::BinaryColor,
4    prelude::*,
5    text::{Alignment, Baseline, Text, TextStyleBuilder},
6};
7use embedded_graphics_simulator::{
8    BinaryColorTheme, OutputSettingsBuilder, SimulatorDisplay, Window,
9};
10
11fn main() {
12    let mut display = SimulatorDisplay::<BinaryColor>::new(Size::new(256, 64));
13
14    let large_text = MonoTextStyle::new(&FONT_10X20, BinaryColor::On);
15    let centered = TextStyleBuilder::new()
16        .baseline(Baseline::Middle)
17        .alignment(Alignment::Center)
18        .build();
19
20    Text::with_text_style(
21        "embedded-graphics",
22        display.bounding_box().center(),
23        large_text,
24        centered,
25    )
26    .draw(&mut display)
27    .unwrap();
28
29    // Uncomment one of the `theme` lines to use a different theme.
30    let output_settings = OutputSettingsBuilder::new()
31        //.theme(BinaryColorTheme::LcdGreen)
32        //.theme(BinaryColorTheme::LcdWhite)
33        .theme(BinaryColorTheme::LcdBlue)
34        //.theme(BinaryColorTheme::OledBlue)
35        //.theme(BinaryColorTheme::OledWhite)
36        .build();
37
38    let mut window = Window::new("Themes", &output_settings);
39    window.show_static(&display);
40}