English Polski
English Polski


 

KazFont - darmowa czcionka programisty dla Windows

W góręPoprzedni Następny

3. Pomoc w debugowaniu

Dla czcionki używanej w edycji kodu źródłowego są inne wymagania niż dla okna debug, np. zwykle dla okna debug ustawiamy mniejszą czcionkę.

Jeśli wypisujesz proste teksty z programu to zwykła czcionka wystarczy. Jednak gdy pracujesz z danymi binarnymi z portu szeregowego, soketu lub z urządzenia, to prawdopodobnie chciałbyś widzieć dokładne wartości bajtów.

KazFont na dwa sposoby spełnia to wymaganie.

3a. Czcionka Hex

Zamiast znaków, widać wartości szesnastkowe. Cały zakres 256. znaków jest pokazany jako liczby szesnastkowe. W ten sposób można dowolny edytor zmienić w przeglądarkę szesnastkową, nawet zwykły Notatnik w Windows.

Znaki kontrolne poniżej 0x20 mogą być czasem niepoprawnie wyświetlane przez edytor, w szczególności kody 0x00, 0x09, 0x0A i 0x0D.

Binary 8 Binary 9 Binary 10 Binary 12 Binary 13

3b. Czcionka UTF8

Również wyświetla wartości znaków poniżej 0x20, ale pokazuje rzeczywiste znaki w zakresie 0x20 - 0x7E. Znak spacji jest oznaczony i nie jest pustym miejscem.

Czcionka wyświetla wartości bajtów więc dlaczego nazywa się UTF8 ?
Kodowanie UTF8 podlega ścisłym regułom. Jeśli znak mieści się w jednym bajcie, jego wartość jest mniejsza niż 0x7F.
Jeśli znak Unicode wymaga dwóch lub więcej bajtów do zakodowania w UTF8, wtedy wartość pierwszego bajtu z grupy jest zawsze większa lub równa 0xC0.

W czcionce KazFont UTF8 dla tych wartości bajtów (≥ 0xC0), bitmapa znaku jest przesunięta w prawo o piksel. Dzięki temu można łatwo zaobserwować gdzie zaczyna się wielobajtowa sekwencja znaku Unicode. Widać to na poniższych przykładach. Dokładny wygląd tekstu jest zależny od zastosowanego edytora.

UTF-8 8 UTF-8 9 UTF-8 10 UTF-8 12 UTF-8 13

Przykłady:

Tekst oryginalny zakodowany w CP1250 i zapisany jako UTF-8:
UTF-8 Sample Original

Ten sam tekst widziany jako ASCII w kodowaniu zachodnioeuropejskim:
UTF-8 Sample Western

Ten sam tekst wyświetlony czcionką KazFont UTF8 w różnych wielkościach, łatwo rozpoznać pary UTF-8:

UTF-8 Sample 8

UTF-8 Sample 9

UTF-8 Sample 10

UTF-8 Sample 12

UTF-8 Sample 13

Bajty EF BB BF zaznaczają text jako UTF-8.



Copyright © 2004-2015 Omega Computer