Elektroda.pl
Elektroda.pl
X
OptexOptex
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Pixel Factory - generator fontów graficznych LCD (do C)

mirekk36 23 Gru 2011 17:57 20537 43
  • #31
    mirekk36
    Poziom 42  
    nsvinc napisał:
    mirekk36 napisał:
    Pierszy starszy bajt drugi młodszy - tego ofsetu

    Duży endian może być kłopotliwy. Zdaję sobie sprawę, że na 8bitowych mikrokontrolerach może być łatwiej przetwarzać bajty gdy są one w tej kolejności, ale dla systemów >=16bit taka kolejność wymusza zbędny narzut, bo przecież łatwiej postawić wskaźnik na u16 w konkretne miejsce bufora i sobie stamtąd przeczytać całe słowo na raz. Tym bardziej, że ta tablica jest w RAMie, a Cortexy obsługują odczyt niewyrównany...


    No OK ;) może zmienię to na Little endian ... bo w sumie tu z mojego punktu widzenia na 8-bitowym AVR to z kolei żadna różnica - i tak muszę wczytać bajt po bajcie.
  • OptexOptex
  • #32
    mirekk36
    Poziom 42  
    Wszystko zmienione na LittleEndian, no i powstaje powoli własny EDYTOR każdego ze znaków dowolnego fontu. Tzn ładujemy dowolny font i możemy dowolnie przetworzyć znak o dowolnym kodzie ASCII na co chcemy. Np na jakąś własną semigrafikę itp.

    Lewy klawisz myszy - rysuje
    Prawy klawisz myszy - kasuje

    Pixel Factory - generator fontów graficznych LCD (do C)

    Oczywiście zupełna dowolność tzn można sobie edytować czyste fonty proporcjonalne (zmienna szerokość w pixelach jak na obrazku) albo KAŻDY font przerobić na stałą szerokość (automatyczne dopasowanie szerokości do najszerszego znaku - zwykle duża litera W)
  • OptexOptex
  • #33
    mirekk36
    Poziom 42  
    Ok już jest do pobrania najnowsza wersja 1.0.1.3

    Można sobie potestować jak działa fajnie edytorek fontów tzn własnych znaków ;)

    poniżej krótki filmik z działania:

  • #35
    mirekk36
    Poziom 42  
    MichałS napisał:
    Pobrałem wersję 1.0.1.8 i niestety zamyka się sama, bez komunikatu po 10sek. Nie ważne czy coś zdążysz zrobić, czy program zostanie tylko uruchomiony. Sprawdzałem na 2 różnych komputerach, niestety to samo. Czy można coś na to poradzić?


    Pobierz jeszcze raz, jest już dużo nowsza wersja 1.0.2.3. Ale pamiętaj, że aplikacja MUSI mieć dostęp do internetu. Jeśli będzie miała zablokowany przez firewall'e to niestety się wyłączy :(
  • #39
    mirekk36
    Poziom 42  
    Nie ma żadnych opcji wyciętych bo to nie jest jakiś tam przerobiony program, tylko napisany zupełnie od początku do końca przeze mnie. A sama podstawowa idea dekodowania fontów bazuje rzeczywiście na pomyśle z tego programu. Kiedyś dawno temu ją zobaczyłem i bardzo mi się spodobała. Nawet może nie myślałbym o pisaniu od nowa takiej aplikacji ale spróbuj sobie w tym programie z tego linku wygenerować polskie znaki ;) ... to jest niestety koszmar, czego nie można powiedzieć o moim PixelFactory. Dlatego też nie robiłem wszystkich opcji a tylko te, których sam potrzebowałem. Reasumując Pixel Factory to obecnie nie tylko narzędzie do fontów jak program z linku ale także obróbka bitmap kolorowych - formaty RGB(555) oraz RGB(888), konwersje do bitmap z różnych formatów, podgląd bitmap generowanych przez mój program a w przygotowaniu także obróbka bitmap monochromatycznych ;) ... I rzeczywiście dla monochromatycznych będzie trzeba zrobić generowanie np fontów obróconych czy też specyficzne dla takich wyświetlaczy generowanie bitmap.
  • #40
    Svavo
    Poziom 23  
    Ja używam programu Font and Bitmap Generator. Dla mnie rewelacja, a wybrałem go spośród kilkunastu podobnych. Można wygenerować tablicę z dowolnej czcionki systemowej (lub kilku wstawionych do jednego pliku), ustawić dowolną orientację bajtów w tablicy. Jest dużo możliwości edycji automatycznie wygenerowanych fontów (pojedynczych i wszystkich znaków). A najbardziej podoba mi się generacja fontów proporcjonalnych, na czym mi najbardziej zależało (do wyświetlacza RGB 400x240).
    Program jest darmowy, ale trzeba się zarejestrować.
  • #41
    kekon
    Poziom 17  
    Cytat:
    Nie ma żadnych opcji wyciętych bo to nie jest jakiś tam przerobiony program, tylko napisany zupełnie od początku do końca przeze mnie. A sama podstawowa idea dekodowania fontów bazuje rzeczywiście na pomyśle z tego programu. Kiedyś dawno temu ją zobaczyłem i bardzo mi się spodobała. Nawet może nie myślałbym o pisaniu od nowa takiej aplikacji ale spróbuj sobie w tym programie z tego linku wygenerować polskie znaki ;) ... to jest niestety koszmar, czego nie można powiedzieć o moim PixelFactory.


    Nie taki diabeł straszny. Fakt, że program Dot Factory jest pod tym względem wadliwy ale można to zrobić wpisując w lewym panelu wszystkie polskie znaki po czym program wygeneruje tablicę do nich. W tablicy "Descriptors" następnie trzeba usunąć wszystkie elementy "{0, 0}". Dodatkowo trzeba dodać w pisanym programie do obsługi LCD przekierowanie na bitmapy polskich znaków jeśli w trakcie wyświetlania kolejnych znaków trafi się polski znak. To nie jest takie trudne.
  • #43
    giciors
    Poziom 12  
    Witam
    Wiem , teraz, nie doczytałem , było zbyt dużo postów i przeoczyłem 2-ą stronę. Nic to nie szkodzi aby polecić to narzędzie. Jest proste i nie jest kosztowne jak Pixel Factor na początek amatorowi co nie "śmierdzi groszek" zastępuję dobrze program Pana Mirka a efekt działania jest taki sam. Dziwi mnie podobieństwo tych dwóch programów do tego stopnia iż w Pixelu nawet komentarze są żywcem pobrane z Dot-a. Polecam dla tych prawdziwych amatorów bez kasy ale z pomysłami i to się liczy najbardziej a nie kasa i kasa i ...... reklama ciągle reklama a to jest lepsze a to robi więcej a to jest super , konwersja RGB i takie i siakie dziesiątki nie potrzebnych amatorowi funkcji za ponad 100PLN a my potrzebujemy tylko fontów i jakiegoś prostego obrazka do bardziej skomplikowanych rzeczy kupuje się trochę bardziej rozbudowane programy niż Pixel Factor.
    Pozdrawiam
  • #44
    kekon
    Poziom 17  
    Cytat:
    Polecam dla tych prawdziwych amatorów


    Profesjonaliści też korzystają z darmowych programów. Wiele z nich nie jest wcale gorszych od tych komeryjnych. ;)

    Wracając jeszcze do polskich znaków. W wielu edytorach używanych do pisania kodu źródłowego również bywa kiepsko z polskimi literkami. Deklarując np. string w jęzku C, który zawiera polskie znaki np.

    char[] s = "Błąd pomiaru";

    po zamknięciu edytora i ponownym jego otworzeniu (np. na innym komputerze a nawet na tym samym tylko że innego dnia...) zamiast literek 'ą' i 'ł' możemy zobaczyć przypadkowe "krzaki". Dodatkowo, każdy edytor może zapamiętywać polskie literki w innej stronie kodowej co skutkuje tym, że w zadeklarowanej tablicy char[] zamiast 1-bajtowego kodu ASCII polskich znaków znajdą się kody 16-bitowe Unicode lub jeszcze inne. Aby tego uniknąć stosuję metodę polegającą na wstawieniu zamiast polskiego znaku - jego kodu ASCII ze strony kodowej 852 (dla polskich znaków) w zapisze hex:

    char[] s = "B\x88\xA5\d pomiaru".

    Jest to trochę niewygodne i nieczytelne ale wtedy ma się pewność że w miejsce literek 'ł' i 'ą' zawsze będą wstawione bajty o wartościach 0x88 i 0xA5.
    Funkcja, która potem będzie wyświetlać napisy na wyświetlaczu "wie", że podane bajty o wspomnianych wartościach to kody polskich znaków, których bitmapy są umieszczone w oddzielnej tablicy w pamięci. Stosuję tę metodę z powodzeniem w moich programach.