В проектах интернета вещей часто требуется отображать текст на различных языках, в том числе на русском, на дисплеях. Однако настройка таких дисплеев для правильного отображения русского текста может быть непростой задачей.
В этой статье мы подробно рассмотрим, как настроить TFT SPI-дисплей для отображения русского текста. Мы обсудим не только технические аспекты настройки, но и шаги по подготовке соответствующих файлов шрифтов (в форматах.ttf или.otf) для загрузки на микроконтроллер.
В качестве примера мы будем использовать модуль Node MCU, основанный на ESP32, и TFT SPI-дисплей.
2 комментария. Оставить новый
Здравствуйте. У Вас в примере шрифт загружается в память устройства, но мне хотелось бы реализовать это через файл с расширением .h, который тоже создается скриптом в processing. Пример такого использования шрифта можно найти, если набрать в поисковике “Correct way to add Custom Fonts?”. Проблема только в том, что библиотека требует для загрузки шрифта раздел GFXglyph, но скрипт processing его не создает. Было бы полезно, если Вы пояснили бы, что это за глифы и как их получать. Может где-то есть обновленный скрипт, чтобы создавал все как надо?
Здравствуйте! Похоже, что библиотека TFT_eSPI получила обновление, в котором был добавлен новый способ загрузки шрифтов. В новой версии библиотеки также был обновлён скрипе для Processing, который теперь также генерирует .h файл для шрифта и сохраняет его в папке
<путь до библиотеки>/Tools/Create_Smooth_Font/Create_font
.Если вы хотите воспользоваться этим способом, в таком случае вам не нужно загружать в память микроконтроллера .vlw файл. Вместо этого нужно подключить сгенерированный заголовочный файл со шрифтом. Для этого в начале программы для Arduino нужно добавить строку
#include "<путь до файла>/<имя файла со шрифтом>.h"
.Теперь, когда вы будете использовать функцию tft.loadFont() для загрузки шрифта, в качестве параметра вам нужно будет указать его название без кавычек, точно так, как оно было объявлено в заголовочном файле.