Skip to content

Commit

Permalink
Merge pull request #238 from andrewjswan/2024.6.1-multicolor_text-mod…
Browse files Browse the repository at this point in the history
…e-improve

2024.6.1: In `multicolor_text` mode, added the ability to reset to default color, improved documentation.
  • Loading branch information
lubeda authored Jun 22, 2024
2 parents cf33e93 + b9793d2 commit 07bbf5c
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 5 deletions.
10 changes: 8 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -387,14 +387,20 @@ ehmtxv2:
service: esphome.ulanzi_text_screen
data:
default_font: true
text: "Test Test #00FF00Test #FF0000Test #0000FFTest"
text: "Default Color Text #00FF00Green Color Text #FF0000Red Color Text #0000FFBlue Color Text #000000Default Color Text"
lifetime: 2
screen_time: 10
r: 255
g: 255
b: 255
```
Shows text in different colors, `Test Test` in the default color `#FFFFFF` (r: 255, g:255, b: 255), followed by `Test` in green `#00FF00`, then `Test` in red `#FF0000` and finally `Test` in blue `#0000FF`.
Shows text in different colors, `Default Color Text` in the default color `#FFFFFF` (r: 255, g:255, b: 255), followed by `Green Color Text` in green `#00FF00`, then `Red Color Text` in red `#FF0000`, then `Blue Color Text` in blue `#0000FF` and finally `Default Color Text` in default color, due `#000000`.

> [!WARNING]
> In this mode, with a large number of color changes, or with long lines, a short-term decrease in performance is possible.
>
> ```[13:26:02][W][component:237]: Component display took a long time for an operation (55 ms).```
> ```[13:26:02][W][component:238]: Components should block for at most 30 ms.```

**icons2html** (optional, boolean): If true, generate the HTML-file (*filename*.html) to show all included icons. (default = `false`)

Expand Down
13 changes: 10 additions & 3 deletions components/ehmtxv2/EHMTX.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -2736,8 +2736,8 @@ namespace esphome
}
else
{
this->display->printf(x, ypos, font, c_, display::TextAlign::BASELINE_LEFT, "%s", parts.at(i).c_str());
}
this->display->printf(x, ypos, font, c_, display::TextAlign::BASELINE_LEFT, "%s", parts.at(i).c_str());
}
}
else if (i == 2) // Minutes
{
Expand Down Expand Up @@ -2939,7 +2939,14 @@ namespace esphome
int r, g, b;
if (res.at(i).length() == 7 && std::regex_match(res.at(i), is_color) && sscanf(&res.at(i).c_str()[1], "%02x%02x%02x", &r, &g, &b))
{
c = Color(r, g ,b);
if (r + g + b > 0)
{
c = Color(r, g ,b);
}
else
{
c = color;
}
}
else
{
Expand Down

0 comments on commit 07bbf5c

Please sign in to comment.