PROGRAMOWANIE
WEBMASTER:
 Artyku³y
 Kursy
 Skrypty
PHP:
 Artyku³y
 Kursy
 Skrypty
VISUAL C/C++:
 Artyku³y
 Kursy
 Kody ¼ród³owe
C++ BUILDER:
 Artyku³y
 Kursy
 Komponenty
 Kody ¼ród³owe
 FAQ
DELPHI:
 Artyku³y
 Kursy
 Komponenty
 Kody ¼ród³owe
 FAQ
JAVA:
 Artyku³y
 Kursy
 Aplety
ASP:
 Artyku³y
 Kursy
 Skrypty
VISUAL BASIC:
 Artyku³y
 Kursy
 Kody ¼ród³owe
PASCAL:
 Artyku³y
 Kursy
 Kody ¼ród³owe
ASSEMBLER:
 Artyku³y
 Kursy
 Kody ¼ród³owe
O NAS [...]
 Ekipa portalu
 Reklama
REKLAMA

Pascal » Artyku³y
Tworzenie w³asnych czcionek
Bêdzie to czysty tekst bez jakichkolwiek przyk³adów w postaci kodów ¼ród³owych! rozwi±zanie problemów stworzenie edytora i odtworzenia w pó¼niejszym programie zapisanych czcionek pozostawiam tobie.

1. Zastosowanie.

Korzystaj±c z trybu 13h mo¿liwe standardowo dostêpna jest systemowe czcionki zapisane w pamiêci ROM. Nie s± to jakie¶ dzie³a sztuki czy fantazyjne litery ale za ich pomoc± mo¿na ju¿ postawiæ tekst w trybie 13h. Fajna rzecz, ale du¿o lepszym rozwi±zaniem jest stworzenie w³asnego edytora czcionek chocia¿by w trybie tekstowym (ja tak zrobi³em, najwa¿niejsze jest to aby da³o siê jako¶ zrobiæ a ten edytor jak na moje potrzeby wystarcza mi w zupe³no¶ci). W³a¶nie najlepiej jest to zrobiæ w tek¶cie bo jest bardzo ³atwo, a co najwa¿niejsze szybko zaprogramowaæ taki edytorek.

Tak wygl±da mój edytor fontów


2. Zaczynamy.

Chc±c stworzyæ czcionkê wypada³oby j± zapisaæ. Tak jak kodów ASCII jest 255 tak i my zapiszemy do pliku z czcionk± 255 literek. Nasza literka bêdzie mia³a rozmiar 8x16 pixeli oraz postaæ tablicy.

literka = Array[1..8,1..16] of byte;

a ca³a czcionka

TFont = Array[1...255] of literka;

Chocia¿ mia³o byæ zero kodu to nie mog³em siê opanowaæ i musia³em to napisaæ SORRY! Tak¿e edytujemy sobie czcionkê w edytorze, potem zapisujemy j± sobie w nastêpuj±cy sposób je¿eli jest postawiony pixel to zapisujesz w literce 1, a je¶li nie ma to 0. np literka A bêdzie wygl±daæ tak:

               
               
               
      Û        
    Û   Û      
  Û       Û    
Û           Û  
Û             Û
Û             Û
Û             Û
Û             Û
Û Û Û Û Û Û Û Û
Û             Û
Û             Û
Û             Û
Û             Û
                                     
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 1 0 0 0 0
0 0 1 0 1 0 0 0
0 1 0 0 0 1 0 0
1 0 0 0 0 0 1 0
1 0 0 0 0 0 0 1
1 0 0 0 0 0 0 1
1 0 0 0 0 0 0 1
1 0 0 0 0 0 0 1
1 1 1 1 1 1 1 1
1 0 0 0 0 0 0 1
1 0 0 0 0 0 0 1
1 0 0 0 0 0 0 1
1 0 0 0 0 0 0 1

Jak widaæ nie jest to przesadnie trudne a je¿eli ruszysz muzgownic± to zauwa¿ysz, ¿e bezsensownie jest zapisywaæ bajty, lepiej jest zastosowaæ kompresjê bitow± np. ja tak zrobi³em i czcionka sk³adaj±ca siê z 255 znaków o wielko¶ci 8x16 zajmuje tylko 4096 bajtów czyli 4 Kb jest to ¶mieszna wielko¶æ. Odtwarzanie tych czcionek w programie jest banalne i pozostawiam to Twojej inwencji twórczej jak wszystko w zasadzie. To ju¿ wszystko co musisz wiedzieæ o fontach aby móc je tworzyæ i obs³ugiwaæ je. Poni¿ej znajdziesz przyk³ady czcionek stworzonych przeze mnie oraz przyk³ad ochydnej czcionki systemowej.


Tomasz Fidos
NEWSLETTER
Chcesz byæ zawsze na bie¿±co?
Zapisz siê!
WP.PL
LITERATURA
INNE [?]
Katalog WWW
Sponsor
On-Line: 4
stat4u
Wszystkie prawa zastrze¿one © 2001-2002 Programik.com