Képek létrehozása és betűtípusok formátuma - a - a beágyazott alkalmazások


Egy rövid története

volt egy hasonló probléma, de egy másik képernyőn néhány év elteltével - TIC154 a PCF8535. Emellett meg kellett fordítani, hogy a méret „C” és egy képet, nem csak betűtípusokat. Úgy döntöttek, hogy írjon egy új programot a megfelelő funkciókat, beleértve a változó kiadási méret „C” fájlok és adatok a különböző vezérlők.
Így született meg az LCD Bitmap Converter. Használt, de csak egy projekt csak, de ez nem róla szól.

Néhány évvel később, amikor elköltöztem Windows Ubuntu Linux, és ott már írtam szoftver mikrokontoller a horizonton magasodott a projekt egy új BP320240E kijelző a RA8835, és megváltoztatta a megértése ezt a problémát, vannak új ötletek, követelmények, ami a végén hogy a szülés a program LCD Image Converter.

előfeltételek

Betűtípusok állnak képek karaktereket bit tömbök, és a megfelelő karakter kódok ezen tömbök. Ezért a fő cél az volt, hogy olyan megfelelő képviselet a kép, mint egy sor bit.

Tapasztalat TIC154 és BP320240E azt mutatta, hogy a legegyszerűbb módja, hogy létrehozzák a képet a frame buffer memóriát a mikrokontroller és továbbítani változás után a kijelző teljesen.
Az adatok tárolásának a kijelző memóriába olvasott ki őket, módosítására és írja vissza kaptuk lényegesen lassabb.

Dolgozik különböző kijelzők vezetett szükségességének megértése otvyazki programot az adott készülék típusától, annak szervezete és a memória adatbusz szélességét. Mivel a program teljesen újraírt minden új kijelző lenne butaság :) Kívülről semmi nem volt könnyű, és a szükséges funkciókat.
Továbbá, a későbbi időpontban fog támogatni egy színes kijelzők. Lehet, hogy ez nem nagyon fontos a betűtípusokat, de a képek - teljesen.

Néha szükség van speciális karakterek megjelenítéséhez a szövegben, amelyek nem szerepelnek a Windows-1251 rendszeres asztal kódok 32-ig 255 Források írt programok LINUX, UTF-8, mert jött az ötlet, hogy végre Unicode támogatás. Ez lehetővé teszi, hogy a forrás szövegben, teljes mértékben összhangban van a szöveg a kijelzőn. Nélkül, bármilyen típusú egyezmények „\ 0xff” kell tekinteni az „i” betű, és ahelyett, „@” felhívni a görög gamma „gamma”

kapott követelmények

Tehát, figyelembe véve az előző változat a program, a követelmények ki sleduyushie:
  • Képek létrehozása és betűtípusok „C” méret
  • Unicode-támogatás
  • Cross-platform, elvégre én már programozás LINUX
  • Monokróm képek és színes (felhalmozódik) szürkeárnyalatos
  • A vízszintes és függőleges elhelyezésű bájt memóriát
  • A méret a adatelemek a tömbök 8, 16, 24 vagy 32 bit
  • 1. 24 bit per pont a fekete-fehér 24-bites RGB
  • Képes megváltoztatni a kimeneti formátumot megváltoztatása nélkül maga a program
  • Különböző bitek sorrendje az adatok, például RGB, BGR, RBG, stb

Mi történt

Qt 4.7 keretrendszer lett kiválasztva végrehajtásának a jellegét, hogy jöhet cross-platform, a sebességet a program XML-támogatás, és a különböző képformátumok, Unicode "out of the box" nemzetközivé.
Ennek alapja az átalakulás választottak ki, és végre a sablon fájlokat és az értelmező nekik (az előző verzió volt XSL-átalakítás XML szöveges nagyon nyilvánvaló, hogy az átlagember).

Képek létrehozása és betűtípusok formátuma - a - a beágyazott alkalmazások

Képek létrehozása és betűtípusok formátuma - a - a beágyazott alkalmazások

Énkép konverziós algoritmus egy tömbben a bitek a következő funkciókat támogatja:
  • függőleges / vízszintes tájolása bájt memóriát és bármely irányba képbeolvasási pont (megvalósított előzetes forgatás / reflexió a képeket a jobb oldalon, és mindig követi szkennelés balról jobbra és fentről lefelé haladva)
  • Vigyük át egy fekete-fehér kép pont / szürke / RGB fokozatosság
  • Biteltolás adatokat semmilyen rendelést színű bitek és számuk változások, például R5G6B5, R8G8B8 vagy egyszerűen BW1
  • Csomagolás bit 8, 16, 24 vagy 32 bites adat blokkok, hogy töltse tömbök

Képek létrehozása és betűtípusok formátuma - a - a beágyazott alkalmazások

A sablonok egyszerű szöveges fájlok, így néz ki (ebben az esetben a kép):
ahol a szöveg közötti @ és @ helyébe a megfelelő változók meghatározott létrehozásakor a kép / szöveg, vagy akár át azt a „C” méret.

Néhány példa az eredmény

Meghatározott első kép pillangó:

Képek létrehozása és betűtípusok formátuma - a - a beágyazott alkalmazások

  • XML formátumban

  • ebben a formában „C” (a színes és monokróm)
  • egy monokróm kijelző BP320240E vezérlő RA8835
    Képek létrehozása és betűtípusok formátuma - a - a beágyazott alkalmazások

  • színes kijelző vezérlő SSD1289
    Képek létrehozása és betűtípusok formátuma - a - a beágyazott alkalmazások

betűtípus:
  • több Ubuntu betűtípus karaktereit XML formátumban

  • Azonban a „C” méret
  • szöveget egy monokróm kijelző TIC32 vezérlő PCF8531 (már van egy másik font)
    Képek létrehozása és betűtípusok formátuma - a - a beágyazott alkalmazások

Az utolsó változat a program, részletesebb leírást a beállítások és algoritmusok, megtalálható a honlapon: LCD Image Converter

Elköltöztem Windows Ubuntu Linux, és ott már írtam szoftver mikrokontoller a horizonton magasodott a projekt egy új BP320240E kijelző a RA8835, és megváltoztatta a megértése ezt a problémát, vannak új ötletek, követelmények, ami végül oda vezetett, hogy a szülés a program LCD Image Converter. Miért csak internetes változata a Windows? Amennyiben a verzió az Ubuntu?

Ő megy gond nélkül

BitFontCreator fizetett, és ha használja ingyenesen hogy időben korlátozott.
A LCD Image Converter ingyenes, és van egy átalakítása képek és betűtípusok, hogy úgy mondjam, minden egyben.
Ami az ajánlást:
1. Megkérdeztem scan: balról jobbra, alulról felfelé; inverzió.
Shift a byte-sorrend (little-endian / Big-endian) eredmények nem változnak.
2. Ha ez alkalmas a kép nem túl kényelmes a betűtípus ezt a módszert.
Ui Van-e lehetőség, hogy hajtsák végre a szkennelési módszer LCD Image Converter.

Minden egy történt, mivel a szöveges kimenet funkciók, én már a kép kimeneti funkció.
Ugyanebből az okból, és nem jelent semmilyen kellemetlenséget nekem, hogy jelenítse meg a kimenetet. Az 1. és 2., amelyek együtt kell használni.

Azt a lehetőséget, hogy észre, természetesen. De mivel az összetettség, nem látom, hogy még.