Polices à utiliser avec des horloges à matrice LED et d'autres projets de matrice LED
Ces polices sont conçues avec des horloges de matrice LED à l'esprit, en particulier une unité qui utilise EspHoMaTriXv2 ou EspHome-Led-PixelClock . Ce sont des polices BDF et TTF, ils peuvent donc être directement implémentés avec l'esphome (et peut-être Arduino).
Parce que ce sont des polices bitmap, la taille de ces polices est fixée par pixels. Ils ne sont pas résidants. C'est une bonne chose.
La plupart des personnages auront 3 pixels de large, mais certains personnages comme G et M et et sont plus larges. Les caractères de ponctuation mesurent généralement 1 ou 2 pixels de large. Tous les caractères ont 1 colonne vide sur le côté droit, à l'exception de l'espace qui est exactement 2 pixels, certains tirets d'Unicode et peut-être quelques caractères latins accents Ognok.
Je continuerai à ajouter des personnages aux polices comme j'ai le temps. Si vous souhaitez que votre langue soit une priorité ou si vous avez besoin de certains personnages ajoutés, ouvrez un problème et je verrai ce que je peux faire.
Convient lors de l'utilisation de toute la hauteur d'une matrice à 8 rangs
Tout ce qui est grand et blocké - a fière allure comme un écran de temps

[Téléchargement BDF | TTF Téléchargement]
Sous la ligne de base, est généralement réservé aux queues, mais avec les polices «X», il n'y a pas de base - tout prend les 8 rangées de pixels complets

[Téléchargement BDF | TTF Téléchargement]
La plupart des personnages ont été allongés et stylisés

[Téléchargement BDF | TTF Téléchargement]
Éclné et stylisé en 8 lignes complètes - celle-ci a l'air vraiment bien sur les écrans d'information!

[Téléchargement BDF | TTF Téléchargement]
Convient lorsque vous utilisez une bande en semaine sous le temps sur une matrice à 8 rangs
Veuillez noter que de nombreux personnages accentués dans les polices non X ont été poussés sous la ligne de base pour les rendre un peu moins terribles.
Tout ce grand et le blocage

[Téléchargement BDF | TTF Téléchargement]
Grand et blocage en 6 rangées complètes

[Téléchargement BDF | TTF Téléchargement]
Éclairci et stylisé

[Téléchargement BDF | TTF Téléchargement]
Éclairé et stylisé en 6 rangées complètes

[Téléchargement BDF | TTF Téléchargement]
Pour réduire l'espace que la police occupe pendant la compilation, veuillez utiliser le code en tant que tel:
font:
- file: fonts/MatrixLight6.bdf
id: special_font
glyphs: |
! "#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[]^_`abcdefghijklmnopqrstuvwxyz°
Si vous utilisez un fichier TTF, vous devez spécifier la taille de la police:
font:
- file: fonts/MatrixLight8.ttf
id: default_font
glyphs: |
! "#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[]^_`abcdefghijklmnopqrstuvwxyz°
size: 8
! "#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[]^_`abcdefghijklmnopqrstuvwxyz{|}~
¡¢£¤¦§©ª«®°±²³´µ¶¥·¹º»¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖרÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ
En raison de la faille BDF-Pillow (voir ci-dessous), j'ai fait quelques personnages "inutiles" dans le latin étendu - a ressembler à autre chose. Vous pouvez toujours utiliser un fichier BDF si vous utilisez ces caractères spéciaux dans la liste des glyphes et dans l'assistant à domicile.
¨¬¯¸¼½¾
| Personnage | Apparaît comme |
|---|---|
¨ | ₿ Bitcoin |
¸ | Ξ Ethereum |
¬ | ℃ degré C |
¯ | ℉ degré f |
¼ | € euro |
½ | ₩ GAGNE |
¾ | ₴ Hryvnia |
ĀāĂ㥹ĆćĈĉĊċČčĎďĐđĒēĔĕĖėĘęĚěĜĝĞğĠġĢģĤĥĦħĨĩĪīĬĭĮįİıIJijĴĵĶķĸĹĺĻļĽľĿŀŁłŃńŅņŇňʼnŊŋŌōŎŏŐőŒœŔŕŖŗŘřŚśŜŝŞşŠšŢţŤťŦŧŨũŪūŬŭŮůŰűŲųŴŵŶŷŸŹźŻżŽžſ
АаБбВвГ㥴ДдЕеЄєЖжЗзИиІіЇїЙйКкЛлМмНнОоПпРрСсТтУуФфХхЦцЧчШшЩщЬьЮюЯя
ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΤΥΦΧΨΩΆΈΉΊΌΎΏΪΫαβγδεζηθικλμνξοπρςστυφχψωάέήίϊϋόύώ
Notez que ceux-ci n'ont pas été testés par une personne grecque réelle. S'il vous plaît laissez-moi savoir si ça va!
Le Vietnamien utilise ces personnages, déjà présents dans les ensembles de base latin et étendu-A:
ABCDEGHIKLMNOPQRSTUVXYabcdeghiklmnopqrstuvxyÀÁÂÃÈÉÊÌÍÒÓÔÕÙÚÝàáâãèéêìíòóôõùúýĂăĐđĨĩŨũ
Ainsi que ceux-ci:
ƠơƯưẠạẢảẤấẦầẨẩẪẫẬậẮắẰằẲẳẴẵẶặẸẹẺẻẼẽẾếỀềỂểỄễỆệỈỉỊịỌọỎỏỐốỒồỔổỖỗỘộỚớỜờỞởỠỡỢợỤụỦủỨứỪừỬửỮữỰựỲỳỴỵỶỷỸỹ
Notez que ceux-ci n'ont pas été testés par une personne vietnamienne réelle. S'il vous plaît laissez-moi savoir si ça va! Beaucoup de personnages de Chunky8 (et certains dans Light8) ont dû être poussés sous la ligne de base pour rendre l'accent possible. Les polices 8x sont probablement correctes. Je me demande si les voyelles avec des cornes ou des points sont réellement lisibles (en particulier les O en position 7896 à 7907).
Veuillez noter que ces personnages sont beaucoup plus larges que les personnages standard car les queues, les effectifs et les courbes sont très importants pour l'IPA. Ils sont principalement basés sur le style Light8 et sont identiques dans toutes les polices de la série 8.
L'IPA utilise principalement ces caractères:
ɐɑɒɓɔɕɖɗɘəɚɛɜɝɞɟɠɡɢɣɤɥɦɧɨɪɫɬɭɮɯɰɱɲɳɴɵɶɸɹɺɻɼɽɾɿʀʁʂʃʄʅʈʉʊʋʌʍʎʏʐʑʒʔʕʘʙʚʛʜʝʟʡʢ
Si vous ne pouvez pas afficher tous les caractères, selon vos besoins, vous pouvez essayer d'ajouter les caractères obsolètes:
ɩɷʆʇʓʖʗʞʠʣʤʥʦʧʨ
Peut-être les personnages de discours désordonnés:
ʩʪʫʬʭ
Et enfin, les ajouts de la sinologie:
ʮʯ
오후전일월화수목금토요
一二三四五六天七八九十星期月上下午
Notez que 上下午 sont un peu écrasés pour permettre l'écran de 上午 & 下午 plus facilement.
L'espace ordinaire (comme disponible sur la plupart des claviers) mesure 2 pixels de large. Voici quelques autres espaces disponibles.
| Espace | Nom | Unicode | Largeur |
|---|---|---|---|
| Espace mince | U + 2009 | 1 pixel |
| En espace | U + 2002 | 3 pixels |
| Em Space | U + 2003 | 4 pixels |
Dans le cas où ces espaces ne vous sont pas utiles (ils sont invisibles et l'esphome les traitera probablement comme des espaces), voici quelques autres espaces disponibles en utilisant l'ensemble de nombres encerclés Unicode.
⓪①②③④⑤⑥⑦⑧⑨⑩
| Espace | Nom | Unicode | Largeur d'espace |
|---|---|---|---|
⓪ | Encerclé 0 | U + 24ea | 0 pixels |
① | Encerclé 1 | U + 2460 | 1 pixel |
② | Encerclé 2 | U + 2461 | 2 pixels |
③ | Encerclé 3 | U + 2462 | 3 pixels |
④ | Encerclé 4 | U + 2463 | 4 pixels |
⑤ | Encerclé 5 | U + 2464 | 5 pixels |
⑥ | Encerclé 6 | U + 2465 | 6 pixels |
⑦ | Encerclé 7 | U + 2466 | 7 pixels |
⑧ | Encerclé 8 | U + 2467 | 8 pixels |
⑨ | Encerclé 9 | U + 2468 | 9 pixels |
⑩ | Encerclé 10 | U + 2469 | 10 pixels |
L'hyén-minus ordinaire (comme disponible sur la plupart des claviers) mesure 3 pixels de large et un espace. Voici quelques autres ponctuations disponibles.
‐–—―•
| Marque | Nom | Unicode | Largeur |
|---|---|---|---|
‐ | Hygen | U + 2010 | 1 pixel de large, pas d'espace |
– | En hygen | U + 2013 | 2 pixels de large + espace |
— | EM Héphes | U + 2014 | 4 pixels de large + espace |
― | Barre horizontale | U + 2015 | 4 pixels de large, pas d'espace |
• | Balle | U + 2022 | 1 pixel de large + espace |
₡₢₦₩₪₫€₭₮₱₲₴₵₸₹₺₼₽₾₿
℃℉
L'un de ces personnages peut apparaître si le personnage que vous appelez n'est pas disponible.
| Apparence | Nom | Unicode |
|---|---|---|
![]() | Nul | U + 0000 |
![]() | Boîte blanche | U + 25a1 |
![]() | Caractère inconnu | U + fffd |
Notez que les ajouter à la liste des glyphes dans une esphome ne semble pas aider lorsque vous essayez d'afficher un personnage réellement inconnu (mon horloge peint juste un bloc large), mais voici les deux derniers (null n'est pas utilisable de cette façon):
□�
Tous les caractères inclus dans la liste des glyphes qui ne sont pas réellement dans la police entraîneront une erreur d'Esphome lors de la compilation. Tout caractère demandé non inclus dans la liste des glyphes doit entraîner une erreur et / ou un bloc ou un blanc affiché par votre horloge.
Notez également qu'il existe une limite de 256 caractères qui peuvent être utilisés. Il s'agit d'une limite dure définie par oreiller, une dépendance python qui convertit les polices en bitmaps utilisables par Esphome. Si votre liste de glyphes est plus longue, tous les caractères au-delà de cette limite ne seront tout simplement pas affichés.
UnicodeEncodeError: 'latin-1' codec can't encode character 'u0416' in position 0: ordinal not in range(256)
Cette erreur est liée à la façon dont l'oreiller interprète un fichier de police BDF comme étant dans le codepage latin-1 si la liste de caractères ne correspond pas à ce qu'elle attend. Étant donné que cette partie de l'oreiller est assez ancienne, il ne semble pas intéressant de le réparer pour correspondre aux normes UTF. Donc, si vous souhaitez utiliser des caractères Unicode (tout ce qui est en dehors de Latin Basic et Extended-A), vous devez utiliser un fichier TTF à la place.
Ces fichiers TTF ne sont pas utilisables par Windows, car ils n'incluent que les bitmaps. Ils ne sont pas non plus très utiles lors de la modification de la police. Les fichiers BDF seront donc toujours considérés comme des fichiers maîtres.
Lorsque vous utilisez Esphomatrix, vérifiez que c'est dans votre YAML (modifier selon les besoins):
ehmtxv2:
default_font_id: default_font
default_font_yoffset: 6
special_font_id: special_font
special_font_yoffset: 8
Veuillez noter que Yoffset peut être délicat. Vous devez utiliser un nombre qui correspond à la ligne de base de la police. Pour ces polices, il n'y a en fait rien sous la ligne de base de la police; J'ai conçu les polices pour que les polices non X soient en fait augmentées à 1 pixel au-dessus de la ligne de base afin que les queues apparaissent correctement.
Si vous souhaitez qu'un jeu de personnage soit ajouté, ouvrez un problème, faites une demande! Veuillez garder vos lignes de communication ouvertes car je ne connais probablement pas votre langue et j'aurai des questions!
Consultez FontForge: https://fontforge.org/en-us/
Andrew J.Swan pour une énorme aide avec les personnages cyrilliques.
À l'origine, j'ai utilisé Tom Thumb comme base. Il y a peut-être encore une certaine ressemblance, mais c'est simplement parce que vous ne pouvez pas faire beaucoup de pixels aussi limités. Néanmoins, si vous êtes intéressé par une police monospacée 4x6 (3x5 utilisable), vous pouvez cliquer ici.
De plus, une inspiration pour les personnages coréens a été empruntée à Dalmori, une très belle police de Hangul Pixel.
Les caractères chinois sont près de 100% copiés à partir de la police Boutique Bitmap 7x7, une police de pixel chinoise et étirée un peu dans la série X.