Script Python para crear nuevas fuentes para Waveshare Epaper / E-Aink [Módulo EPS32]
Estoy muy feliz con mi pantalla de unión electrónica desde Waveshare, pero su biblioteca solo ofrece tipos de fuentes básicas, y solo 5 tamaños de fuentes (Font8, Font12, Font16, Font20 y Font24). Lamentablemente, esto es muy limitante :(
Este guión de Python está inspirado en el blog de Waveshare esto. Pero no proporcionan ningún código para usar ...
Por otro lado, el Font2Bytes de Dominik Kapusta está disponible, pero requiere compiladores C ++.
Esta es mi versión hecha en Python. En este momento solo recrea cuidadores ASCII, pero puede usar cualquier fuente y especificar cualquier tamaño. (solo asegúrese de que se ajuste a su pantalla Epaper)
Deje caer cualquier fuente que desee usar (.tff) dentro de la carpeta ./fonts dentro del font2bytes.py
especifique un nuevo nombre para la fuente para crear
Especifique el nombre de fuente que desea usar (el valor predeterminado es roboto-regular)
Especifique la altura y el ancho de la nueva fuente.
Ejecute el guión de Python
El script de Python generará el nuevo archivo .cpp dentro de la carpeta ./output con el nombre deseado
Dentro de la carpeta fuente de la biblioteca Waveshare (Arduino Bibliotecas ESP32 Waveshare-EPD SRC)
Agregue el nuevo archivo de fuente .cpp
Abra las fuentes. H y
Agregue una nueva línea "extern" con el nombre de la nueva fuente
Por ejemplo: extern sfont fontbold40;
[Opcional] Asegúrese de que el Max_Height_Font definido y Max_Width_Font sean iguales o más pequeños que el nuevo tamaño de fuente. Actualizar los valores si es necesario
¡Usa la nueva fuente en tu guión y disfruta!
Por ejemplo, pintar_drawstring_en (5, 0, "Waveshare Electronics", & fontbold40, negro, blanco);
Dentro de la carpeta ./output ya hay un par de archivos .cpp que se pueden usar sin ejecutar el código Oython. Simplemente siga las instrucciones del sexto paso
TheHexstyle
LGPL v3.0, vea la licencia para obtener más detalles.