Fórum témák
» Több friss téma |
A topik témája az egyre népszerűbb és Eink, EPD, E-paper, elektronikus papír használata, programozása, alaposabb kitárgyalása.
Idézet: „Az elektronikus papír elnevezés olyan elektronikus kijelzőt, más néven e-Ink kijelzőt takar, ami ultra vékony, esetleg hajlékony és helyettesítheti a hagyományos papír funkcióját, vagyis olvasható információt jelenít meg. Az e-Ink (EPD = Electronic Paper Display) kijelzők az elektroforézis elvén működnek. Az elv egyszerű, két elektróda között mikroméretű kapszulák vannak, melyek különféle oldalai fehér vagy fekete színűek a bennük lévő fémszemcséknek és festékszemcséknek köszönhetően. A mikroméretű kapszulák sűrű olajszerű folyadékban vannak azért, hogy elektromos mező alatt szabadon elfordulhassanak. Elektromos mező hatására, a mező polaritásától függően a fehér vagy fekete oldal fordul adott irányba, megjelenítve ezzel az adott képpontot. A pixelek vezérlése a hagyományos aktív mátrix (TFT) technológiával történik. A kijelzőkhöz nem szükséges háttérvilágítás, a megjelenített információ hasonló, mintha papírra nyomtatott információt olvasnánk. Az EPD kijelzők nagy előnye, hogy a beírt információ a tartó folyadék nagy viszkozitásának köszönhetően elektromos mező, vagyis tápfeszültség nélkül is megmarad, olvasható.” Az első bejegyzésem egyben egy kérdés is, még hozzá, hogy tud e esetleg valaki olyan gyűjtőoldalról vagy egyéb más helyen letölthető, C nyelvre már előkészített betűtípusokat (font). Szükségem lenne több mérető, esetleg más-más stílusú karaktertípusra, de egyelőre nem találok 24-esnél, ami 17x24 pixel méretű betűknél nagyobbat. Illetve digitális betűtípus is jó lenne.
Hali! Ott bukik meg a dolog, hogy a fontkészleteknek "formátuma" van. Adott kijelzőhöz készített progi adott formátumo(ka)t, tud kezelni... Előbb nézd meg a használt library-d mit tud, utána keress hozzá fontot. Persze működik a gombhoz kabátot is
Guglival sok fontot, meg konvertert lehet találni... pl ezt nem tudom mekkoráig hajlandó: https://oleddisplay.squix.ch/#/home ezt is megnézegetheted: https://rop.nl/truetype2gfx/ a képernyőn legalábbis simán csinál 100-ast, ide akár a saját windowsodból is feltölthetsz font-ot, és konvertálgathatsz. Jut eszembe: Font-oknál - pl ha céges vagy publikus a cucc - figyelni kell a szerzői jogi kérdésekre is...
Szerintem ha eljutok vele egy darabig, meg fogom osztani egy leírással. Köszi ezeket átnézem. A kijelző 400x300-as felbontású 4.2 inch-es e papaer. Van rá 8, 12, 16, 20, 24-es méretű font készlet, de nagyobb illetve jó lenne más típus is. Pl. digitális típus, az a 7 szegmenses. Jól mutatnának a számok azzal a típussal.
Én közben találtam egy oldalt, amely BMP képből konvertál C állományt a beállításoknak megfelelően. Itt ügye 1bit/szín/pixel, ami meghatározza a rajzolatot. Bővebben: Link Dobtam fel egy képet, az itt látható 00 pl. 24-es méret. A hozzászólás módosítva: Márc 10, 2023
"LCD image converter" a progi neve, többek között azonnal embeddelhető, hivatkozható fontok lesznek.
A C forrást elkészíti.
Ezzel tudsz C forrásra konvertálni a windowsban használt betűkészletek közül.
Csináltam egy kis parancssoros programot, ami nem proporcionális (azaz azonos betűszélességű) betűkészlet fájlokat képes oda-vissza konvertálgatni. Háromféle formátumot ismer, a "Mikroelektronika GLCD Font Creator 1.2.0.0" lcd kiterjesztésű betűkészleteit, a normál BMP képfájlt és a C forrást. A C forrásnál ezt a formátumot ismeri. Bármelyik irányban képes konvertálni, a parancssorban csak a forrásfájl nevét kell megadni, a kiterjesztésből rájön miből kell neki konvertálni (a két másik fájl lesz a kimenet). Képes üres képfájlt is létrehozni, a létrehozott képfájlba a szürke keretekbe bármelyik rajzolóprogrammal belerajzolhatjuk a betűket (vagy akár ikonokat), majd az elkészült rajzot átkonvertálhatjuk C forrássá. A képfájloknál szürke színű az elválasztó keret, az nem kerül bele a betűkészletbe, csak a betűk széleit teszi láthatóvá. A képfájlba a felső két sornyi (azaz az első 32) karakter a nem használt karakterek teljesen feketén jelennek meg. Ide ne rajzoljunk.
Paraméter nélkül a programot elindítva kiír egy rövid használati utasítást.
Mint közben kiderült, nem minden program tölti ki a BMP képfájl fejlécének biSizeImage mezőjét, és ebben az esetben a program nem működött. Itt a javított verzió (igazából jó lenne az előző hozzászólásom mellékletét kicserélni erre. csak sajnos ezt már nem tudom megtenni).
Ha jól értem, akkor ez a program, 1 azaz 1 képből készít C állományt, amely a fentebbi linken szereplő kimeneti formátumba importálja a kép adatait. Jól gondolom? Tehát nem lehet 1 képre az összes betűt, karaktert felvinni, csak 1-et.? Nem tudom, hogy a font-okból mennyire kínlódás ki exportálni a karakterkészletet? Köszi a programot, holnap vagy is majd ma.. ki próbálom..
Rosszul értelmezed. A teljes betűkészletből készít 1db képfájlt (16 sor * 16 oszlop). Az átrajzoláskor nem gond ha véletlenül belerajzolsz a karaktereket elválasztó vonalakba, azzal nem törődik, hibátlanul vissza fogja konvertálni C forrássá. De a legegyszerűbb ha kipróbálod a fenti linken levő C forrásban levő betűkészlet valamelyikével, a "font24.c" fájlból pl. ilyen bitmap képet állít elő.
Köszi, kipróbáltam frankón működik, de kérdés itt keretet a font nagyságának megfelelően álltja be? Illetve, ha nagyobb betüket akarok készíteni, akkor azt hogy adom meg a programnak?
Ezt próbálom át konvertálni c állományba, de csak törli a kép tartamát. Mit rontok el?
A hozzászólás módosítva: Márc 21, 2023
Oké, közben megvan mit hibáztam. Most már működik. Köszi.
Ezek szerint végül sikerült kitalálnod hogyan működik. A méret megadás csak az üres bitmap létrehozásához kell, hiszen a program nem gondolatolvasó, nem tudja kitalálni mekkora betűméretű betűkészletet akarsz létrehozni. A bitmap -> C konvertáláskor a bitmap felbontásából ki tudja számolni mekkora betűméreteket tartalmaz (X = X képpontok száma-17, majd ezt osztja 16-al, Y ugyanez csak függőlegesen). Ha nem osztható, akkor nem csinálja meg a konverziót.
|
Bejelentkezés
Hirdetés |