Bonjour,
J'utilise un écran TFT 2.8" SPI + dalle tactile avec un contrôleur ILI9341, malgré quelques soucis de mise en œuvre liés à la vitesse du bus, l'ensemble fonctionne comme je le souhaite.
J'utilise principalement les bibliothèques Adafruit_ILI9341.h, Adafruit_GFX et XPT2046_Touchscreen.h
Il s'avère que GFX n'a que des Fonts 7 bits, je recherche des fonts 8 bits ou UTF-8 compatibles avec GFX.
Auriez-vous ce type de fonts ?
Ou un lien, une solution à ce problème ?
Merci
As-tu jeté un oeil à TomThumb ?
Dans ton répertoire Adafruit-GFX-Library/Fonts.
En la compilant comme ceci :
#define TOMTHUMB_USE_EXTENDED 1
Et aussi :
const GFXfont TomThumb PROGMEM = {(uint8_t *)TomThumbBitmaps,
(GFXglyph *)TomThumbGlyphs, 0x20, 0x7E, 6};
// remplacer 0x7E par le dernier caractère : 0xFFFD
Bonjour Henri
Merci pour la réponse
Oui
Mais pour l'instant je n'arrive pas à faire fonctionner le bazar
Je te tiens au courant
[edit]
Voila la compilation est ok mais le résultat ne correspond pas à ce que je souhaite.
Les caractères > à 127 affichés ne sont pas ceux d'une font latines
Es-tu sûr que les caractères que tu cherches à afficher sont codés en LATIN1 et pas en UTF8 ?
Essaie d'afficher "\xE0\xE8\xE9" : àèé
Bonjour,
Je ne suis plus sûr de rien. Je vais faire le test
Pour être plus précis, quand tu entres des chaînes de caractères dans l'IDE, c'est certainement de l'UTF8, et le moniteur série l'interprète bien :
void setup() {
char s[] = "le blé est mûr";
Serial.begin(115200);
Serial.println(s);
for (int x = 0 ; s[x] ; x++) {
Serial.println(s[x]);
}
}
void loop() {
}
le blé est mûr
l
e
b
l
⸮
⸮
e
s
t
m
⸮
⸮
r
je le pense aussi!
La d⸮⸮monstration montrerait plut⸮⸮t le contraire!
Par contre chez moi tout est compatible.
À savoir que les caractères sont en 8x6 pixels.
Aussi, essaye de créer tes propres caractères spéciaux dans une fonction, affichant le caractère avec des pixels, affichés grâce à une fonction pour afficher un pixel.
Parce qu'aussi, on sait que un afficheur LCD affiche très bien des caractères spéciaux, quine sont pas forcément inclus dans la librairie de ton écran.
Non. L'affichage de la chaîne est correct, mais l'affichage octet par octet montre des caractères non imprimables, ce qui est normal étant donné qu'un caractère UTF8 est composé de 2 caractères. C'est ce que voulais démontrer.
Exact, désolé
Pas terrible ...
Bonjour,
Je te l'accorde
Je vais voir pour inclure les fonts de U8g2
Il faudrait si possible nous dire exactement ce que tu veux, c'est à dire les caractères que tu veux. Donc déja au moins é et è je pense !
En tout cas, ce n'est pas des caractères ASCII que tu veux, mais plutot des caractères UTF-8. Donc tout le reste. Voici tun lien sur Wikipédia indiquant les informations sur UTF-8 :
La demande est parfaitement claire : exploiter une police étendue, c'est à dire possédant les caractères allant de 128 à 255, comme la LATIN1 ou ISO8859, donc sur 8 bits, et non pas 16 comme l'UTF8.
L'UTF8 est parfaitement inexploitable sur les petits embarqués, sauf RASPBERRY PI ou autre.
Il y a quelques jours j'étais tombé là dessus :
https://www.sigmdel.ca/michel/program/misc/gfxfont_8bit_fr.html
Je vais voir ce contenu en parallèle avec U8g2 font for Adafruit GFX
Bonjour,
Une lueur d'espoir, cela ne correspond pas tout à fait à ce que je souhaite mais il y a du progrès.
Cela reste relativement complexe les caractères accentués avec Adafruit_GFX.
C'est déjà pas mal. Tu as fait comme préconisé ici ?
Bonjour Henry,
Oui, c'est bien de là que je suis parti mais il y a aussi la suite :
Suite de l'atrticle
J'ai également demandé quelques compléments à l'auteur.