PC Press
O nama
O nama
Pretplata
O nama
Postanite saradnik PC-ja
Kontakt sa redakcijom
PC Press
Novi broj
Novi broj   
Pretrazivanje
Arhiva
Arhiva   
PC Online
PC Plus   
Specijalna izdanja
Softver Softver
PC #32 : Februar 1998 Knjiga 50 godina racunarstva u Srbiji

 Naslovna  Sadržaj 
Bojan Stojanović  

Putujući fontovi

Internet Explorer 4 je doneo dugo najavljivanu podršku za umetanje fontova u Web stranice.

Mogućnost umetanja fontova značajna je za sve vrste dokumenata. Do sada je prikazano nekoliko tehnologija koje obezbeđuju portabilnost fajlova pripremljenih u raznovrsnim aplikacijama. Iako mehanizmi supstitucije omogućavaju da se, u slučaju da neki font nedostaje, upotrebi najpribližnija varijanta (u ovoj oblasti najviše je postigao Adobe, svojim Multiple Master fontovima), krajnji rezultat će ponekad biti nezadovoljavajući, a efekat koji smo želeli da postignemo doveden u pitanje. Ako je u prvom planu maksimalni kvalitet, umetanje fontova je jedino rešenje.

Tehnička rešenja

Microsoft je umetanje fontova isprobao u Word-u i Power Point-u, mada je najpre trebalo rešiti neka pravna pitanja - tako je sastavni deo TrueType definicije postao parametar koji predstavlja "dozvolu" za umetanje fontova u dokument i njihovo korišćenje na drugom računaru pod različitim okolnostima. Postoji nekoliko nivoa koje postavlja proizvođač fonta. Fully instalable fontovi umetnuti u dokument mogu se instalirati na drugom računaru i koristiti bez ograničenja. Editable fontovi dozvoljavaju da se u okviru datog dokumenta vrše izmene, ali se fontovi ne mogu koristiti u drugim programima. Ako je embedding permission parametar postavljen na print preview, dokument se može odštampati ili posmatrati na ekranu u neizmenjenom obliku, dok do not embed znači da umetanje dotičnog fonta u dokumente nije dozvoljeno.

Iako se, u tehničkom smislu, za umetanje fontova u Web stranice mogu upotrebiti slična rešenja kao i za bilo koje druge dokumente, postoji i nekoliko otežavajućih okolnosti koje treba imati u vidu. Zbog toga će Microsoft u prelaznoj fazi i dalje raditi na proširivanju skupa besplatnih Web core fontova (Verdana, Georgia, MS Trebuchet, Impact...), kako bi postojala regularna mogućnost da se "obogate" prezentacije pre nego što umetanje fontova zaživi.

Za tehnologiju uključivanja fontova u HTML dokumente veoma je važno da ne dođe do primetno sporijeg odziva, koji bi poništio sve prednosti koje ovaj postupak donosi. Ključ leži u optimizaciji skupa karaktera u fontu koji će biti umetnut i transportovan mrežom. Ako je, naprimer, u nekom naslovu upotrebljeno samo nekoliko slovnih znakova, nema potrebe da se prenose opisi svih slova i specijalnih znakova.

Microsoft Internet Explorer 4.0 podržava Web stranice sa umetnutim fontovima koje su pripremljene po Microsoft-ovom receptu. Standard još uvek nije profilisan, pa se ove prezentacije ne mogu korektno videti u drugim browser-ima.

Imajući u vidu snažan uticaj Microsoft-a, realno je očekivati njihov prodor i u ovoj oblasti. Da bi olakšao pripremu stranica koje sadrže umetnute fontove, Microsoft je stavio na raspolaganje program WEFT (Web Embedding Fonts Tool) koji se može preuzeti sa njihovog sajta. Postojeća verzija nije finalna, ali demonstrira sve tehnike koje će biti korišćene.

Kako radi WEFT

WEFT je post-production alatka i njen rad zasniva se na kreiranju font objekata koji se povezuju sa HTML fajlom. Font objekti imaju ekstenziju EOT i razlikuju se od klasičnih TrueType fontova - kompresovani su i sadrže optimizovan skup znakova. Kao primer uzećemo jednostavan HTML dokument:

HTML>
  HEAD>
    TITLE>Test strana/TITLE>
  /HEAD>
  BODY>
    FONT FACE=ARIAL SIZE=5> Test /FONT>
  /BODY>
HTML>

Nakon startovanja WEFT-a navodimo lokaciju test strane, npr. file://c:\proba\test.htm. Moguće je navesti i adresu na Internetu poput http://www.sezampro.yu/~bojans. Onda pokrećemo opciju Build page list koja će ustanoviti strukturu prezentacije. Sledeći korak je analiza stranica (Analyze pages): WEFT će pokrenuti Internet Explorer 4.0 i za svaku stranicu pojedinačno utvrditi naznačene fontove za umetanje. Tom prilikom videćemo status svakog fonta u skladu sa postavljenim parametrom dozvole za umetanje i broj upotrebljenih karaktera u okviru fonta.

Web i statistika

Velika pažnja posvećena je optimizaciji podskupova znakova (subsetting). WEFT poznaje nekoliko tipova optimizacija (Font Subsetting). Moguće je optimizaciju sprovesti na nivou stranica (Per Page) ili celokupne prezentacije (Per Site). U prvom slučaju, ako prezentacija ima tri stranice i ako je na svakoj upotrebljen isti font, formirati tri font objekta, dok će u slučaju Per Site optimizacije nastati samo jedan .eot fajl.

Pretpostavimo da je za prvu stranicu dovoljan podskup od 24, za drugu od 48 i za treću od 35 karaktera iz umetnutog fonta. Ukoliko neko pristupa pretežno pojedinačnim stranicima, najefikasniji je Per Page način izdvajanja karaktera, odnosno umetanje tačno onoliko karaktera koliko je potrebno za stranicu. Već u situaciji kada neko pregleda čitav site, ekonomičnije je opredeliti se za izdvajanje maksimalnog podskupa koji je dovoljan za sve stranice. Pošto WEFT ne može da zna kako statistički izgleda posećenost naše prezentacije po stranicama, moraćemo sami da izaberemo tip optimizacije.

Varijacije na temu optimizacije pokazuju da se Microsoft potrudio da obradi gotovo sve slučajeve. Family based subsetting (podrazumevana opcija) analizira upotrebu slova u familijama fontova. Ako smo u fontu Palatino upotrebili slova a, b, i c, a u fontu Palatino Bold slova a, b, c, i d, za oba fonta će se kreirati .eot fajlovi koji sadrže slova a, b, c, i d. U uputstvu za WEFT je navedena tipična situacija kojoj pogoduje ovakva selekcija. Radi se o Web stranicama koje se dinamički menjaju u kojima je posećeni link ispisan bold, a neposećeni normal stilom. Union subsetting formira skup znakova koji će biti uključeni u font kao uniju svih upotrebljenih znakova u svim fontovima na nivou prezentacije. Ovim su zadovoljeni i HTML dokumenti sa složenijim dinamičkim sadržajem jer je, osim stila, moguće izmeniti i tekstualni sadržaj. Pomenućemo još i Raw optimizaciju koja radi slično kao i Union ali u obzir uzima celokupan sadržaj HTML stranice (uključujući i komentare), zatim Language koja dozvoljava izbor Unicode nizova potrebnih da bi se "pokrio" neki jezik i mogućnost da isključimo subsetting opciju. Postoji i mogućnost da pomoću opcije Editing subsets ručno odredimo sadržaj umetnutog fonta.

Novo ruho prezentacija

Prilikom izbora optimizacije veliku ulogu igraju statistički podaci o posećenosti segmenata Web prezentacije. Microsoft prepušta korisnicima da sami dođu do ovih podataka, ali na osnovu ponuđenih kategorija jasno je da treba obratiti pažnju pre svega na principijelnu razliku između statičkih HTML strana, zatim onih koje sadrže client script-ove napisane u JavaScript-u ili VBScript-u, dinamičkih strana u kojima se menja ispis naslova, tabela itd, kao i server script dokumenata uključujući ActiveX Server Page (.asp) dokumente.

U našem jednostavnom primeru WEFT će primetiti da koristimo osnovni Windows font sa podskupom od tri karaktera. Za osnovne fontove umetanje nije potrebno, ali nam neće biti onemogućeno da to uradimo pokretanjem opcije Create fonts. Izmenjenu verziju HTML dokumenta snimamo opcijom Publish pages. Prethodni primer je sada poprimio oblik sa slike 1. Primećujemo da je WEFT dodao Style sekciju koja sadrži podatke o umetnutom fontu i da je kreiran font objekat Arial.Eot. U ovom fajlu nalaze se svi podaci koji su potrebni TrueType rasterizatoru kako bi generisao originalni izgled slovnih likova sa informacijama o hintovima.

Složeniji tekstualni objekti za koje su nam dosada bile potrebne GIF ili JPEG slike moći će da se realizuju korišćenjem sistemskog TrueType rasterizatora. Pored toga, za osnovni tekst na Web stranama možemo da upotrebimo bilo koji font a da ne razmišljamo o tome kako će se stranica koju dizajniramo videti na drugim računarima. Iako su Web dizajneri i dosad stvarali efektne prezentacije, pred njima se sada otvara polje novih mogućnosti.

Ulaznica za Web

Bez obzira na to što prilikom umetanja fontova nismo ograničeni u bilo kom pogledu, tipografske norme i dalje važe. To što možemo upotrebljavati fontove po želji ne znači da treba opteretiti Web stranice mnoštvom različitih slovnih oblika, prvenstveno zbog njihovog skladnog izgleda, ali i zbog usporavanja prenosa stranica do korisnika, odnosno posetioca na Internetu.

Pri izboru fontova treba obratiti pažnju da nisu svi TrueType fontovi pogodni za niskorezolucijski ekranski prikaz. Još uvek su u pogledu maksimalnog kvaliteta hintova najbolji Monotype fontovi koji sa pravom nose ESQ (Enhanced Screen Quality) etiketu. Često se kvalitet i nivo detalja nekih fontova gubi na niskim rezolucijama, pa se za Web fontove ne treba oslanjati na DTP kriterijume.

Umetanje fontova nije čarobni štapić koji rešava sve probleme sa slovima - za složenije efekte mora se koristiti stari sistem "štapa i kanapa" - primena filtera u Photoshop-u i pretvaranje teksta u bitmapirane slike. Veštom upotrebom umetanja u mnogim situacijama može se postići dobar rezultat. Posetite www.microsoft.com/typography i pregledajte stranice koje predstavljaju primer upotrebe nove tehnologije.

Za finalnu verziju WEFT-a najavljene su i neke nove opcije, pre svega podrška za Type 1 fontove i mogućnost digitalnog potpisivanja font objekata kako bi se preventivno delovalo na njihovo neovlašćeno kopiranje. Buduće verzije (ili ispravke) Internet Explorer-a imaće ugrađene i dodatne finese u vezi sa umetnutim fontovima. Ako je font koji je referenciran već instaliran na sistemu, odgovarajući font objekat neće se preuzimati, što ubrzava pristup stranica.

Pravac koji je Microsoft zactao daje novi podsticaj tipografiji Web-a i nagoveštava oplemenjeni izgled miliona Web stranica. Možda je zgodno uporediti značaj ove tehnologije sa pojavom konturnih fontova za Windows. Kao što je to bio skok od "sedam milja" za PC računare, tako i umetanje fontova predstavlja veliki napredak za Web.

Slika 1

HTML>
  HEAD>
    TITLE>Test strana/TITLE>
STYLE TYPE="text/css">
!--
  font-face {
    font-family: Arial;
    font-style:  normal;
    font-weight: normal;
    src:url(file://C:\Proba\ARIAL0.eot);
  }
-->
/STYLE>
/HEAD>
  BODY>
    FONT FACE=ARIAL SIZE=5> Test /FONT>
  /BODY>
HTML>