Bezpłatna biblioteka techniczna ENCYKLOPEDIA RADIOELEKTRONIKI I INŻYNIERII ELEKTRYCZNEJ Edytor czcionek bitmapowych dla graficznych wyświetlaczy LCD. Encyklopedia elektroniki radiowej i elektrotechniki Encyklopedia radioelektroniki i elektrotechniki / Projektant radioamatorów Autor oferuje program komputerowy własnej konstrukcji, przeznaczony do tworzenia i edycji czcionek dla współczesnych popularnych graficznych wyświetlaczy LCD. W ostatnich latach radioamatorzy coraz częściej wykorzystują w swoich projektach graficzne wyświetlacze LCD do wyświetlania informacji. Cechą większości tych urządzeń jest obecność generatora znaków częściowo lub całkowicie ładowanego przez zewnętrzne urządzenie sterujące lub jego całkowity brak. W pierwszym przypadku podczas inicjalizacji wskaźnika konieczne jest załadowanie czcionki (zestawu obrazów znaków) do pamięci generatora znaków. Aby wyświetlić symbol na ekranie, program przesyła do kontrolera LCD jedynie jego kod (adres w generatorze znaków), a wyświetlenie symbolu na ekranie zapewnia kontroler LCD. W drugim przypadku wszystkie operacje niezbędne do wyświetlenia symbolu na ekranie wykonuje program urządzenia sterującego. Często w bibliotekach systemów wytwarzania oprogramowania dostępne są gotowe procedury. Ale w obu przypadkach wymagane są zewnętrzne czcionki. Z jednej strony jest to dobre, ponieważ umożliwia użycie zestawów znaków, które są najbardziej odpowiednie do rozwiązania konkretnych problemów. Musisz jednak albo poszukać niezbędnych czcionek, albo stworzyć je samodzielnie. Nie oznacza to, że pliki czcionek dla graficznych wyświetlaczy LCD są rzadkie. Można je łatwo znaleźć w Internecie, jednak nie zawsze można zastosować znalezioną czcionkę. Faktem jest, że różne kontrolery LCD rozwijają obraz postaci w matrycy znajomości na różne sposoby. Przykładowo kontroler KS0107 (KS0108) wskaźnika WG12864 rozszerza bajty obrazu w pionie, jak pokazano na rys. 1, a kontroler RA6963 wskaźnika WG240128 jest ustawiony poziomo (ryc. 2). W pierwszym przypadku symbol R musi być opisany ciągiem bajtów 00H, 00H, 00H, 7FH, 09H, 19H, 29H, 49H, w drugim - 1EH, 11H, 11H, 1EH, 14H, 12H, 11H, 00H. W rezultacie czcionka przygotowana dla wyświetlacza LCD z poziomym skanowaniem bajtów obrazu znaku będzie nieprawidłowo wyświetlana na wskaźnikach przy skanowaniu pionowym i odwrotnie.
Z programistycznego punktu widzenia czcionka jest tablicą stałych. Podczas opracowywania programów wyświetlających informacje na wyświetlaczach LCD stosuje się różne języki programowania z różnymi zasadami opisu takich tablic. Na przykład w języku asemblera stałe są określane przez dyrektywy db (define byte), a w języku BASIC przez operatory Data. W C tablicę stałych można zdefiniować po prostu poprzez zbiór ich wartości. Reprezentacja liczb szesnastkowych jest również inna. Różne języki programowania wykorzystują np. formaty 0xNN, &hNN, $NN, NNH, gdzie NN to cyfry szesnastkowe. Biorąc pod uwagę powyższe, możemy stwierdzić, że znalezienie pliku z odpowiednią gotową czcionką nie jest zadaniem łatwym, a jeśli weźmiemy pod uwagę ewentualną potrzebę posiadania w nim jakichś konkretnych znaków, zadanie często staje się całkowicie nierozwiązywalne. W takich przypadkach trzeba dostosować gdzieś znalezioną czcionkę lub opracować nową od podstaw. Można to wygodnie zrobić za pomocą specjalistycznych programów – tzw. edytorów czcionek. Takich redaktorów można znaleźć w Internecie. Ich główną (przynajmniej tą, z którą miał do czynienia autor) wadą jest wąskie skupienie. Wygląda na to, że program został opracowany przez entuzjastę, aby rozwiązać jego konkretny problem. Na przykład jeden program tworzy plik wyjściowy w formacie zrozumiałym dla kompilatora pojedynczego języka programowania, podczas gdy inny tworzy obrazy znaków odpowiednie tylko dla określonego typu wyświetlacza LCD. Dlatego albo w ogóle nie da się za ich pomocą stworzyć pożądanej czcionki, albo plik wyjściowy trzeba dostosować np. za pomocą edytora tekstu, co zajmuje dużo czasu i rzadko jest pozbawione błędów. Zdolność tych programów do edycji czcionek utworzonych przez innych edytorów jest często bardzo ograniczona. Proponowany program CG-Edit został opracowany przez autora jako narzędzie bardziej uniwersalne. Umożliwia opracowywanie nowych i poprawnych wcześniej utworzonych (w tym „obcych”) czcionek w formatach najczęściej stosowanych w praktyce radioamatorskiej. Dopuszczalne są następujące wymiary znajomości (pierwszy czynnik to liczba pikseli w poziomie, drugi w pionie): 6x8, 8x8, 12x16, 16x16, 16x24, 24x16, 24x24. Możesz projektować i edytować czcionki zarówno w obrazach pozytywowych, jak i negatywowych, a także zmieniać kierunek bajtu w znajomości z pionowego na poziomy i odwrotnie. Informacje wyjściowe można zoptymalizować do wykorzystania w programach w języku asemblerowym, różnych wersjach języków BASIC i C. Program przeznaczony jest dla komputerów osobistych z 32- i 64-bitową wersją systemu Windows. Składa się z pojedynczego pliku wykonywalnego CG-Edit.exe i nie wymaga instalacji, jest łatwy w użyciu i posiada intuicyjny interfejs użytkownika. Po uruchomieniu programu na ekranie komputera otworzy się okno pokazane na rys. 3. 1251. W jego lewej górnej części znajduje się pole wyboru edytowanego znaku w formie tabeli, której komórki zawierają znaki ze strony kodowej Windows-20. Wyświetlane są tylko znaki o kodach 0H-0FFH, obszar kodu sterującego 1H-7FH nie jest pokazywany, ponieważ nie mają one odpowiedników graficznych. Wszystkie podstawowe znaki łacińskie, cyrylica i numeryczne znajdują się poza obszarem kodowym 0FH-1251BFH, więc ten obszar jest wygodny w użyciu do tworzenia dowolnych symboli potrzebnych do rozwiązania zadania, aby zastąpić te dostępne tam zgodnie ze stroną kodową Windows-XNUMX.
Po prawej stronie okna znajduje się pole edycyjne, w którym wyświetlona zostanie znajomość żądanego symbolu, gdy pole to będzie puste. W lewym dolnym rogu znajdują się przyciski ekranowe „Utwórz generator znaków” i „Importuj generator znaków”. Pierwszy z nich przełącza program w tryb tworzenia nowego generatora znaków. Otwiera to okno do wprowadzenia parametrów utworzonej czcionki, w którym należy wybrać z listy wielkość odstępu znakowego oraz kierunek skanowania bajtów w nim. Należy zauważyć, że nie wszystkie rozmiary znanych miejsc umożliwiają oba kierunki skanowania bajtów. Faktem jest, że program koncentruje się na maksymalnej gęstości pakowania informacji. W końcu głównymi „konsumentami” czcionek tworzonych za jego pomocą są urządzenia mikrokontrolerowe ze stosunkowo małą ilością pamięci. Na ryc. 4 pokazuje, że podczas poziomego skanowania bajtu w znanej przestrzeni o wymiarach 6x8 pikseli użyteczne jest tylko sześć bitów, a dwa bity pozostają zbędne. W sumie obraz znaku zajmuje osiem bajtów. Podczas skanowania w pionie (ryc. 5) każda kolumna znajomości zajmuje pełny bajt, więc obraz znaku wymaga tylko sześciu bajtów. Różnica dwóch bajtów dla każdego znaku czcionki jest dość znaczna, dlatego we wszystkich znanych przestrzeniach, w których liczba kolumn nie jest wielokrotnością ośmiu, dozwolone jest tylko skanowanie pionowe.
Po wybraniu parametrów czcionki kliknij przycisk ekranowy „Utwórz”. Spowoduje to zamknięcie okna wprowadzania parametrów, a okno główne przybierze postać pokazaną na rys. 6.
Program tworzy pusty obraz generatora znaków w pamięci RAM komputera. Pozostanie puste do czasu załadowania do niego jakiejkolwiek czcionki z istniejącego pliku poprzez kliknięcie przycisku ekranowego „Importuj generator znaków” lub do momentu utworzenia własnych postaci po kliknięciu przycisku ekranowego „Utwórz generator znaków”. Znaki w polu „Wybierz znak” nie odzwierciedlają rzeczywistej zawartości obrazu generatora znaków. Zawsze pozostają niezmienione i służą jedynie jako wskazówka. W obszarze edycyjnym program wyświetla obraz znanego miejsca o wybranym rozmiarze. Symbol tworzonego lub edytowanego generatora znaków, którego komórka jest zaznaczona w tabeli „Wybierz znak” (jest w niej podświetlona na czerwonym tle), wyświetlany jest w polu „Edytowalne miejsce znaku”. Początkowo jest to symbol o kodzie 20H. Aby przejść do innego symbolu należy kliknąć lewym przyciskiem myszy odpowiednią komórkę tabeli. Napis nad znajomością charakteryzuje parametry tworzonej czcionki. Edytuj zawartość znanego miejsca, klikając jego piksele lewym przyciskiem myszy. Każde takie kliknięcie powoduje zmianę stanu piksela na przeciwny. Na dole pola edycyjnego znajdują się cztery przyciski ekranowe służące do zarządzania grupą pikseli. Kliknięcie w jeden z nich powoduje przesunięcie zawartości znanego miejsca o piksel w górę, w dół, w lewo lub w prawo w jego granicach. Kliknięcie przycisku ekranowego „Usuń” całkowicie usuwa znajome miejsce, a kliknięcie przycisku „Przywróć” przywraca oryginalny styl edytowanej postaci. Z uwagi na to, że operacje kasowania i przywracania trwale usuwają rezultaty edycji symboli, program przed ich wykonaniem wyświetla odpowiednie komunikaty ostrzegawcze. Dolna linia i prawa kolumna znaku są wyróżnione żółtym tłem. Przypomina to, że zawarte w nich piksele są niepożądane, ponieważ obszary te służą jako separatory dla sąsiednich znaków na ekranie LCD. Jednakże pojęcie „niepożądane” nie oznacza zakazu. Możesz włączyć piksel, co musisz zrobić, tworząc symbole takie jak „D” lub „Sch”. Podczas pracy z dużymi znakami dwa dolne wiersze i dwie skrajne na prawo kolumny są podświetlone na żółtym tle, ponieważ dla dobrego postrzegania dużych znaków wskazane jest zwiększenie odstępów między nimi. Poniżej obszaru edycji znajdują się dwa przyciski ekranowe, za pomocą których można całkowicie wyczyścić generator znaków lub przekodować go, zmieniając kierunek skanowania bajtów w znajomości. Jeżeli spróbujesz usunąć czcionkę, która zawiera niezapisane zmiany, program wyświetli komunikat ostrzegawczy. Dopuszczalna jest dowolna kolejność wyboru symboli i ich wielokrotna ponowna edycja. Po pierwszej zmianie stanu dowolnego piksela, symbol w odpowiedniej komórce wyboru zostanie podświetlony pogrubioną, powiększoną czcionką. Oznacza to, że został on edytowany. Wszystko, co wyświetla się w oknie programu podczas procesu edycji, pokazano na rys. 7. Widać, że symbole „3” i „Ř” były już edytowane, teraz edytowany jest symbol „Ř”, a jego „ogon” znajduje się w niepożądanej strefie.
Jeśli zajdzie taka potrzeba, możesz w dowolnym momencie zmienić skanowanie bajtów w znajomości z pionowego na poziome i odwrotnie. W tym celu należy kliknąć przycisk ekranowy „Zmień typ przeciągnięcia”. Operacja dotyczy jednocześnie wszystkich symboli generatora znaków. Po jego wykonaniu na ekranie wyświetli się odpowiedni komunikat, a parametry czcionki wyświetlane nad znajomością ulegną zmianie. Niemożliwa jest zmiana kierunku skanowania, jeśli prowadzi to do zwiększenia objętości obrazu czcionki. Kilka słów o pracy z czcionkami negatywnymi. Sama koncepcja czcionki negatywowej stała się już atawizmem, ponieważ wiele nowoczesnych kontrolerów LCD może samodzielnie odwracać obraz. Niemniej jednak program ma możliwość tworzenia i edycji czcionek negatywnych. Nie ma żadnych różnic w porównaniu z pracą z czcionką pozytywową. W każdym razie symbole na ekranie komputera wyglądają pozytywnie. Przekształcenie ich obrazów w negatywy następuje w procesie zapisu stworzonej czcionki na dysku komputera. Patrząc w przyszłość, zauważamy, że podczas ładowania pliku zawierającego czcionkę negatywową do edycji informacje są wprowadzane do obrazu generatora znaków w pamięci komputera w formie odwróconej (pozytywnej) i ponownie odwracane podczas zapisywania na dysku. Po ustawieniu parametrów czcionki w oknie programu pojawia się kolejny panel zatytułowany „Plik wyjściowy”. Zawiera elementy sterujące, które pozwalają zapisać na dysku plik generatora znaków w wymaganym formacie. Z listy rozwijanej „Format linii” (rys. 8) wybierz strukturę linii w wyjściowym pliku tekstowym. Sekwencja liczb szesnastkowych oddzielonych przecinkami może, ale nie musi, być poprzedzona słowem kluczowym „Dane” lub „.Db”.
Z listy rozwijanej „Format liczb” (rys. 9) wybierz sposób reprezentacji liczby szesnastkowej. Do dwóch cyfr szesnastkowych NN można dodać jeden z dostępnych na liście przedrostków lub przyrostek „h”.
Zaznaczając pozycję "Czcionka negatywna", możesz utworzyć plik z taką czcionką. Aby zapisać plik na dysku komputera, należy kliknąć przycisk ekranowy „Zapisz generator znaków”. Ścieżka do niego jest wskazana w standardowym oknie dialogowym systemu Windows. Domyślna nazwa pliku to FontXXxYYmn.fnt, gdzie XXxYY to format znanego miejsca; m - symbol „v” lub „h”, oznaczający odpowiednio pionowy lub poziomy skan bajtu; n - symbol „p” lub „n”, wskazujący odpowiednio pozytywny lub negatywny obraz znaków; fnt – rozszerzenie nazwy. Nazwę pliku można modyfikować, dodając prawidłowe znaki na początku lub na końcu. Nie zaleca się jednak niszczenia struktury „FontXXxYYmn”. Dzięki niemu program rozpoznaje parametry „swojej” czcionki podczas jej ładowania. W przeciwnym wypadku program uzna plik za „obcy” i będzie wymagał ręcznego wprowadzenia parametrów. W razie potrzeby edytuj gotowy plik generatora znaków w oknie pokazanym na ryc. 3, kliknij przycisk ekranowy „Importuj generator znaków”. Otworzy się standardowe okno ładowania pliku Windows, w którym należy wybrać plik do edycji. Proces pobierania tego pliku różni się w zależności od jego formatu. Plik utworzony za pomocą danego edytora jest do niego ładowany bez interwencji użytkownika. Wszystkie niezbędne informacje o parametrach czcionki zawarte są oczywiście w nazwie pliku, jeśli jest w nim zapisana opisana powyżej konstrukcja. Jeżeli nazwa pliku nie będzie zawierała informacji niezbędnych do identyfikacji, program poprosi o ich ręczne wprowadzenie i otworzy okno, w którym należy określić wielkość odstępu znakowego, kierunek bajtów oraz to, czy czcionka jest w formacie plik, dodatni lub ujemny. Dlatego przed edycją „obcego” pliku powinieneś zapoznać się z tymi parametrami. Jeśli parametry zostaną określone poprawnie, to „obca” czcionka zostanie pomyślnie załadowana z dużym prawdopodobieństwem. Algorytm odczytu informacji zawartych w pliku „rozumie” zarówno liczby dziesiętne, jak i szesnastkowe w różnych ich reprezentacjach, wyciąga przydatne informacje z instrukcji Data i .Db, ignoruje komentarze. Być może jedyną rzeczą, która może stać się przeszkodą w prawidłowym załadowaniu, jest obecność w pliku jakichkolwiek dodatkowych informacji w formie bez komentarza. Proces edycji pobranej czcionki nie różni się od procesu tworzenia nowej. Ostatnim krokiem będzie zapisanie wykonanej pracy w pliku, który stanie się „własnym” dla programu. Plik programu edytora: ftp://ftp.radio.ru/pub/2016/03/CG-Edit.zip. Autor: A. Sawczenko Zobacz inne artykuły Sekcja Projektant radioamatorów. Czytaj i pisz przydatne komentarze do tego artykułu. Najnowsze wiadomości o nauce i technologii, nowa elektronika: Nowy sposób kontrolowania i manipulowania sygnałami optycznymi
05.05.2024 Klawiatura Primium Seneca
05.05.2024 Otwarto najwyższe obserwatorium astronomiczne na świecie
04.05.2024
Inne ciekawe wiadomości: ▪ Produkt transgeniczny powoduje alergie ▪ Bezprzewodowy zestaw słuchawkowy stereo PHILIPS OM6777 ▪ Srebrny nanodrut zamiast folii ITO Wiadomości o nauce i technologii, nowa elektronika
Ciekawe materiały z bezpłatnej biblioteki technicznej: ▪ sekcja serwisu Najważniejsze odkrycia naukowe. Wybór artykułu ▪ artykuł Męska orszak. Popularne wyrażenie ▪ artykuł Jak Europejczycy skrzyżowali dwa indyjskie symbole wojny i pokoju? Szczegółowa odpowiedź ▪ artykuł Kierownik centrum obsługi konsumenta i sprzedaży usług. Opis pracy ▪ artykuł Mikrometr elektronowy. Encyklopedia elektroniki radiowej i elektrotechniki ▪ artykuł Maszyna do wiercenia desek. Encyklopedia elektroniki radiowej i elektrotechniki
Zostaw swój komentarz do tego artykułu: Wszystkie języki tej strony Strona główna | biblioteka | Artykuły | Mapa stony | Recenzje witryn www.diagram.com.ua |