home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
PC Press 1997 July
/
Sezamfile97_1.iso
/
msdos
/
demo
/
tipotek2.a01
/
NAPOMENE.DOC
< prev
next >
Wrap
Text File
|
1993-01-17
|
31KB
|
630 lines
╔═════════════════════════════════════════════════╗
║ ║
║ T I P O T E K - editor konturnih fontova ║
║ ║
║ Napomene uz verziju 2.xx, decembar 1992 ║
║ ║
║ (C) INFOTEK, Beograd, Dunavski kej 21 ║
║ telefon 011/631-547 ║
║ telefaks 011/632-650 ║
║ ║
╚═════════════════════════════════════════════════╝
Ovaj fajl sastoji se iz tri dela, pisana u toku rada na pobolj{anju i
pro{irenju programa, uz stalni kontakt autora sa korisnicima programa.
Tri teksta spojena su ladi lak{eg baratanja u ovaj jedan. Tekstovi su:
1) Napomene
2) Izmene u odnosu na staru verziju
3) Ukratko o crtanju splajnova (novo u verziji 2.xx)
=============================================================================
P r v i d e o (NAPOMENE.DOK)
=============================================================================
OBAVE[TENJA
-----------
- Potpunu podr{ku i eventualne revizije pojedinih delova paketa
ubudu}e }e besplatno imati samo korisnici (kupci) koji su
uredno izvr{ili registraciju. Registraciju mo`ete izvr{iti
bilo slanjem od{tampanog fajla TIPOTEK.USR (nalazi se u
direktorijumu u kome je Tipotek instaliran), bilo slanjem
diskete sa kopijom fajla na adresu Infoteka.
- Ukoliko ste korisnik SEZAMa, mo`ete preko MAILa kontaktirati
autora programa (username: MIVEL) u vezi svih problema, saveta,
upozorenja o eventualnim bugovima ili predlozima.
NAPOMENE
========
1) INI fajl
-----------
Tipotek slepo po{tuje podatke iz svog INI fajla, {to mo`e da dovede
do ~udnog pona~anja programa ukoliko je TIPOTEKx.INI izmenjenbilo na
koji na~in osim samim programom. Efekti su nepredvidljivi, od toga da
program uop{te ne mo`e da startuje, do neprirodnog pona{anja, ~udnih
radnih parametara, o{te}enih tekstova u nekim dijalozima i sl.
U ovom slu~aju jedino re{enje je da se obri{e odgovarajuci INI fajl.
Tipotek }e tada korektno inicijalizovati sve radne parametre
pretpostavljenim vrednostima i na kraju seanse generisati ispravan
INI fajl.
2) LXO fajlovi
--------------
Svi ulazni i izlazni drajveri (osim LXO) u pravilu zahtevaju onoliko
memorije koliko je velik fajl koji se ~ita ili pi{e. Prose~no, to je
oko 50-70K memorije. Interni format (IFT) malo je op{irniji jer je
prilagodjen brzom pristupu u memoriji a ne ekonomi~nom skladi{tenju,
tako da font po u~itavanju zauzima u tipi~nim slu~ajevima do 100 K,
memorije. Iz ovoga proizilazi da Tipotek u principu garantuje siguran
rad sa tipi~nim font fajlovima ukoliko po startovanju programa raspola`e
sa oko 170 K memorije. Veli~ina raspolo`ive memorije u svakom se trenutku
mo`e proveriti pozivom sistema za pomo}: prva strana (sadr`aj) izmedju
ostalog daje i tu informaciju. Uzimajuci u obzir da je najmanje 64 K
uvek alocirano za font, ako je na raspolaganju jos 110 K slobodne memorije
ne}e biti problema sa prose~nim fontovima. Ovaj preduslov je uglavnom vi{e
nego dvostruko ispunjen, a ukoliko nije, verovatni razlog su prethodno
startovani rezidentni programi. Voditi ra~una da je Tipotek dizajniran
tako da garantuje komotan rad sa fontovima koji i dvostruko nadma{uju
prose~nu veli~inu.
Drajveri za ~itanje i pisanje LXO fontova razlikuju se od drajvera za ostale
formate utoliko, {to obradjuju karakter po karakter. Samim tim, oni koriste
onoliko memorije koliko je potrebno da se u~ita zaglavlje fonta, kompletna
kern tabela i najveca definicija slova (koja u najnepovoljnijem slu~aju
tesko da moze da prema{i 2-3K), {to je skupa oko 20K. Tako je mogu}e
obradjivati i LXO fajlove veli~ine 220-230K koji konzumiraju vise od
300K interne memorije ne ostavljaju}i dovoljno prostora nijednom izlaznom
drajveru (osim LXO drajveru, prirodno).
Izuzetak kod LXO drajvera napravljen je zbog korisnika LaserMaster
printera koji su (do pojave Tipoteka) mogli jedino iz Bitstream fontova
da dobiju kompletan YU-set.
LXO fontovi kreirani iz Bitstream BCO formata obi~no su veliki oko 150K,
ali neki prelaze i 200K! Tipotek je, pored ostalog, testiran sa fontom
CE0630.BCO koji konvertovan programom MAKELXO.EXE (font tabela LMEXTEND.FTB)
daje LXO fajl veli~ine 231104 bajtova. Pri oko 600K memorije slobodne
memorije (DOS u gornjem memorijskom bloku!) Tipotek je po u~itavanju
ovog LXO fajla raspolagao sa oko 19K slobodne memorije, {to je jo{ uvek
bilo dovoljno da izlazni drajver sa~uva (ili upi{e novi) LXO fajl.
Isto tako, uspe{no je generisan SFP fajl za veli~inu 48 punkta.
Medjutim, konverzija u bilo koji drugi format u ovom (ekstremnom) slu~aju
nije mogu}a direktno, ve} samo preko privremenog LXO fonta u koji se
upi{u samo mapirani znaci.
3) Adobe Type 3 format
----------------------
Fontovi sa~uvani u ovom formatu mogu da koriste kompletan set PostScript
instrukcija, tako da bi, za apsolutno korektno ~itanje svih fajlova, bilo
neophodno napraviti pravi PostScript interpreter. Zbog toga se odustalo od
ulazne podr{ke ovog formata, dok se za generisanje izlaznog formata uglavnom
po{tuju uputstva iz Adobe Systems Inc.: PostScript Language - Tutorial and
CookBook.
Kao alternativa, font se mo`e eksportovati u malo izmenjenom obliku
tako da je mogu}a njegova konverzija ZSoft-ovim programom TFPOSTSC.EXE
u Publisher's Type Foundry OTL format. Voditi ra~una da se na ovaj
na~in gube svi hintovi definisani interaktivno, a da se mo`e iskoristiti
PTF opcija automatskog hintovanja za eventualnu dalju konverziju pomo}u
paketa SoftType. Automatski hintovani fontovi u svakom slu~aju ne}e
biti idealni.
4) "Fantomski" segmenti
-----------------------
Ekstremno mali segmenti mogu prilikom umanjivanja da proizvedu neobi~an
efekat: po~etna i krajnja ta~ka segmenta imaju jednake koordinate.
U takvom slucaju Tipotek isklju~uje segment iz teku}e konture, ali
ga zadrzava u opisu slova - tekstualan opis izgleda}e otprilike ovako:
M 45,68
L 45,68
odnosno pomak do ta~ke (45,68), a zatim linija du`ine 0 do iste ta~ke.
Ovakav segment mo`e se izbaciti na slede}i nacin:
a) pritisnuti "S" da se osigura aktivnost svih segmenata i
omogu}iti prikaz kontrolnih ta~aka
b) pre}i u proceduru izbora segmenata (ikona koja predstavlja
ruku sa ispru`enim kaziprstom, ili br`e: Ctrl-S)
c) ozna~iti mali blok oko lako uo~ljive oznake za otvoreni segment
d) pritisnuti "A" da se svi segmenti deaktiviraju, a ozna~eni
segment aktivira
e) obrisati aktivne segmente sa <Del>
f) sa~uvati definiciju
Drugi na~in je preko prozora sa tekstualnim opisom:
a) deaktivirati sve segment (tipka "S", zatim tipka "A")
b) "klik" na ozna~enu liniju ili linije
c) obrisati aktivne segmente sa <Del>
d) sa~uvati definiciju
5) Adobe Type 1 generisani programom FontMonger 1.0 for Windows
---------------------------------------------------------------
^udne stvari se doga|aju sa kompozitnim karakterima u ovim fajlovima.
Verovatni uzrok je odstupanje od Adobe standardnog mapiranja u programu
FontMonger {to je, prema Adobe dokumentaciji, u slu~aju standardnih
akcentiranih karaktera nedopustivo.
Da je problem u FontMongeru, a ne u Tipoteku, potvr|uje ~injenica da
nakon konverzije istog Type 1 fajla programom WFNBOSS iz CorelDRAW!
paketa u WFN fajl, CorelDRAW! javlja nepopravljivu gre{ku pri kori{}enju
nekih karaktera iz gornjeg ( > 128 ) dela seta.
Bilo kako bilo, Tipotek mo`e da ispravi ovu gre{ku tako {to se font
ponovo sa~uva u Type 1 formatu.
=============================================================================
D r u g i d e o (ISPRAVKE.DOK)
=============================================================================
T I P O T E K v1.24 i v2.xx - ISPRAVKE I DOPUNE
================================================
Ispravke
--------
* "Kod upisivanja Type 1 fajla neka slova se gube!" (upozorava
Mladen Mozeti}, Novi Sad)
- Stara verzija drajvera ~uvala je samo mapirane znake (jer samo oni
imaju imena).
U novoj verziji drajvera mogu da se ~uvaju i znaci koji nisu mapirani,
tako {to im se dodeli ime "/uxxx", gde je xxx indeks slova u fajlu.
Imati u vidu da se ovi znaci ne nalaze u standardnoj Adobe tabeli,
i da ih aplikacije ne mogu koristiti dok se ne mapiraju na neko od
standardnih mesta. Odluku o tome da li se ~uvaju svi znaci ili samo
mapirani donosi korisnik u dijalogu za izbor formata.
* "Word for Windows ne uzima u obzir kern podatke" (signalizira Sa{a
Stanojkovi}, Beograd)
- Gre{ka je bila u generisanju PFM fajlova gde su kern parovi bili
sortirani prema prvom slovu, dok je konvencija da se sortira po
drugom ~lanu para. Nova verzija to po{tuje!
* "Kretanje mi{a ostavlja trag na ekranu. Koristim WYSE-700 video
adapter." (javlja Jovan Regasek, urednik "Ra~unara", Beograd).
- Prouzrokovano pogre{nim pra}enjem benka video memorije za teku}u
sken liniju. Sada je to otklonjeno.
* "Imam problema sa u~itavanjem LaserMaster fontova generisanih
konverzijom Bitstream BCO fajlova" (Mladen Mozeti}, Novi Sad)
- Bitstream BCO je op{iran opis koji zauzima mnogo prostora. U staroj
verziji drajvera u cilju br`eg dekriptovanja ceo font je bio ~uvan
u memoriji u toku konverzije, tako da nije bilo dovoljno mesta za
radni bafer. U novoj verziji ovo je prevazi|eno tako {to se
LXO fontovi obra|uju karakter po karakter, pa je mogu}e u~itavati
i fajlove od preko 200 Kb. Ovo pro{irenje izvr{eno je po cenu sporijeg
u~itavanja.
* "Kod PFB fajlova trupovi za akcente su pogre{no postavljeni, dok
su trupovi za ostatak slova dobri: (prime}uje Mladen Mozeti}).
- Propust autora: radi se o tzv. kompozitnim znacima, tj. kombinaciji
opisa dva (ili vi{e) slova. Kod baznog slova sve je OK, ali kod drugog
dela zaboravljen je pomak u odnosu na originalnu definiciju. Propust je
ispravljen.
* "Presecanjem krive 'no`i}em' ponekad dobijam dve sasvim pogre{ne
krive" (javlja Branko Ladavac, {tamparija PTT, Beograd)
- Uzrok pogre{nog prora~una je bio u premisi algoritma da se kriva koja
se se~e i linija koja je se~e kre}u idealnom putanjom, koju je nemogu}e
posti}i pri ekranskoj rezoluciji i ponekad rezultira odstupanjem ugla
tangente koja dodiruje krivu.
Funkcija se sada izvr{ava po kompletno novom algoritmu koji najpre
izra~unava odnos du`ina krive pre i posle prese~ne ta~ke, a zatim
vr{i subdiviziju originalne krive. Sporedan efekat ove metode je
taj da se polo`aj ta~ke preseka prilago|ava idealnom kretanju krive,
pa polo`aj dobijene prese~ne ta~ke mo`e da minimalno odstupa od onog
koji se vidi na ekranu (u pravilu ne vi{e od jedne ta~ke em-kvadrata).
UPOZORENJE: ako se kriva deli blizu kontolne ta~ke, odnosno ako je
velika nesrazmera u du`inama novonastalih krivih, mogu}e
je malo odstupanje od inicijalne krive.
* "Kod nekih URW fontova poslednje slovo se mapira u svim }elijama do
kraja tabele" (obave{tava Rade Vesovi}, Beograd)
Ovo je slu~aj kod "kusih" fontova u URW Nimbus-Q formatu, odnosno
fontova sa nepotpunim setom slova. Ova ne toliko gre{ka koliko
mala neprijatnost za korisnika sada je fiksirana.
* "Pozvao sam instalacioni program sa B:INST, ali dobio sam poruku
'Drive A Not Ready". Nakon toga tastatura se blokirala i morao
sam da resetujem ra~unar!" (Jovan Regasek)
Uzrok je gre{ka u instalacionoj proceduri koja je morala biti
startovana sa instalacionom disketom u teku}em drajvu. Problem
je otklonjen!
* "Generisao sam SFP fontove, i kad sam ih {tampao nisam dobio ni{ta
na papiru" (Goran Bradi}, Beograd).
Autorova gre{ka - 'orientation' bajt u opisu karaktera bio je
gre{kom postavljen na "Landscape". Svim kupcima hitno je poslata
ispravljena verzija drajvera D$SFPOUT.DRV, uz veliko izvinjenje!
* "Program AFMTOVFM iz paketa Ventura Publisher (3.0) javlja gre{ku
'Divide overflow'!" (Milo{ Mitrovi} - Shomi, Beograd).
Problem je fiksiran i otklonjen! Gre{ka je bila parametru u liniji
'StartCharStrings #' ~ija je vrednost bila za 1 ve}a od stvarnog
broja karaktera (ina~e, u daleko najve}em broju pogre{nih vrednosti
u programiranju razlika od stvarne je 1 !!!! ).
* "Proveriti pokaziva~ u obliku {ake sa ispru`enim ka`iprstom!?"
(Du{an Georgijevi}, Crepaja).
Zar se {esti prst ne mo`e shvatiti kao umetni~ka sloboda? [alu na
stranu, prst je "amputiran"!
Zahvaljujem se najlep{e na svim upozorenjima!
Dodaci
------
- Prikaz re{etke (Grid). Sada je mogu}e zahtevati da se u prozoru
za editovanje slova prika`e ta~kasta re{etka kao pomo} u orijentaciji
korisnika. Distanca izme|u ta~aka uskla|uje se sa distancom izme|u
podeoka lenjira.
- Prikaz uzorka. Algoritam za prikaz rasterskog uzorka prera|en je
tako da bude senzitivan na slu~aj kada razli~ite ta~ke padaju u
iste koordinate. Na taj na~in, "par-nepar" algoritam ne mo`e vi{e
da "polupa lon~i}e" {ta je unutar, a {ta izvan konture.
- Tekstualan opis slova. Izmenjen je ispis trupova tako {to se
kao prvi podatak daje {irina trupa, a zatim njegove koordinate.
Tako se posti`e bolja preglednost definicija trupova i lak{e
uo~avanje eventualnih nedoslednosti.
- Editovanje kern parova. Ovde je dodata mogu}nost globalnog pove}anja
ili smanjenja razmaka izme|u svakog od definisanih kern parova.
Funkcija je korisna zbog toga {to se po u~itavanju ve} definisanih
parova iznosi korekcija mogu brzo prilagoditi tipu fonta.
- Drajveri preure|eni tako da je izostavljeno ponavljanje istovetnih
delova koda. Nema nikakve razlike u njihovom izvr{avanju, ali je
izbegnuto nepotrebno multipliciranje u fajlovima i zauze}e disk
prostora.
- Promenu krivog u pravi segment i obratno mogu}e je izvr{iti
u momentu kada nije aktivan nijedan modus u prozoru za editovanje,
odnosno kada su ikone za zumiranje, izbor segmenata, crtanje prave
ili krive linije, editovanje, pomeranje, skaliranje ili editivanje
hintova bele. Pokazivanje na `eljeni segment i pritisak na DESNO
dugme mi{a promeni}e tip segmenta (linija/kriva). Ova osobina nije
dokumentovana iz jednostavnog razloga {to autor nije siguran da li
je za promenu linije u krivu izabran najprakti~niji na~in odre|ivanja
kontrolnih ta~aka - svaka ideja je dobrodo{la!
Izmene i dopune u verziji 2.xx
------------------------------
- Prilikom instalacije, sistemski fajlovi se kao i ranije kreiraju
u direktorijumu koji odredi korisnik. Medjutim, prate}i fajlovi
(mape, kern parovi, uzorci fontova i slika) instaliraju se u
poddirektorijumu "TIP" tog direktorijuma. Ovo omogu}ava korisniku
da po `elji obri{e neki ili sve prate}e fajlove, bez opasnisti
da }e gre{kom ukloniti i neki od "sistemskih" fajlova (drajver,
help, tutorijal i sl.).
- Najva`nija novost je podr{ka TrueType formata. Treba, me|utim,
napomenuti da je ovo vrlo kompleksan format, a to se posebno
odnosi na tzv. instrukcije (ekvivalent hintovima kod ostalih
formata), i da }e sigurno drajveri pretrpeti naknadne revizije
i pobolj{anja. U svakom slu~aju, registrovani korisnici }e
besplatno dobijati nove verzije. Zato, NEMOJTE PROPUSTITI DA
IZVR[ITE REGISTRACIJU!
- Prilikom u~itavanja TrueType formata vr{i se konverzija splajnova
u linijske i Bezijerove krive segmente. Ovo ~esto rezultira ne{to
neekonomi~nijim brojem segmenata koji se mogu lako i veoma precizno
izbe}i automatskom procedurom. Ipak, u skladu sa filozofijom
Tipoteka da dozvoli korisniku {to ve}u kontrolu nad fontom, ulazni
drajver ne vr{i ovu konverziju, ve} je ostavljena mogu}nost korisniku
da redukciju segmenata zahteva putem dijaloga za promenu slova ili
celog fonta.
Redukuju se samo susedni krivi segmenti kod kojih je jednako
rastojanje kontrolnih ta~aka od ta~ke spoja (sa tolerancijom +/-1),
a kontrolne linije nisu paralelne sa apscisom ili ordinatom.
Takvi segmenti bezbedno se spajaju u jedan krivi segment, bez
vidnog gubitka preciznosti krive, premda se minimalno odstupanje
ne mo`e izbe}i zbog ~injenice da se rezultati zaokru`uju na ceo
broj. Ukupna veli~ina opisa slova se ovom akcijom mo`e smanjiti
kod gotovo svih fontova, ali je razlika najo~iglednija kod
konvertovanih TrueType fajlova gde redukcija rezultira i do
30% manjim prostorom!
- Kopiranje grupe slova mogu}e je izvr{iti iz font fajlova u
internom (.IFT) formatu putem dugmeta "+" u dijalogu za
u~itavanje font fajla. Opisi svih slova ~iji se indeksi
nalaze u mapi .IFT fajla bi}e uklju~eni u teku}i font.
Ovo zna~i da se izbor grupe slova koja se eksportuju iz
jednog font fajla u drugi vr{i na taj na~in, {to se u
izvornom fontu najpre isprazni teku}a mapa, a zatim popuni
indeksima `eljenih slova (redosled nije bitan!), font sa
novom mapom sa~uva u (privremeni) .IFT fajl, i po u~itavanju
odredi{nog fonta putem dijaloga za u~itavanje i dugmeta
"+" izabere isti .IFT fajl. Uklju~ena slova se pri tome
skaliraju proporcionalno odnosu veli~ina velikih slova
ili, ukoliko u jednom ili oba fonta nije definisana linija
poravnanja velikih slova, proporcionalno odnosu razlika
ascentne i descentne linije.
- Standardno brisanje definicije slova (DEL) ne ostavlja (prazan)
~lan u tabeli indeksa. Ovaj ~lan mo`e se po potrebi ukloniti
ako se brisanje izvr{i izborom reda "Bri{i" u dijalogu za
promenu zaglavlja slova ili br`e kombinacijom Ctl-END na
tastaturi. Imati u vidu da se ovom akcijom opis slova i
indeks nepovratno bri{u (ne pamte se u klip-baferu).
- Kod kopiranja iz klip-bafera (klip-fajla) u opis slova
pretpostavlja se da mu prethodi deaktiviranje svih starih
segmenata, a prva slede}a akcija je preme{tanje definicije.
U cilju smanjenja broja radnji koje korisnik treba da
izvr{i, sada se pre uklju~ivanja sadr`aja svi segmenti
automatski deaktiviraju, a potom osigurava edit modus:
preme{tanje segmenata.
- Nova i vrlo korisna opcija je AUTOMATSKO HINTOVANJE, a dodata
je u dijalog za promenu znaka ili globalnu promenu fonta.
Algoritam defini{e hintove za sve crne (ponekad sive) horizontalne
i vertikalne trupove koji nisu {iri od jedne petine {irine okvira
za ceo font. Za slova koja nisu hintovana pri vrhu i/ili pri dnu
dodaju se tzv. "fantomski trupovi" potrebni ve}ini PostScript
rasterizatora da lokalizuju gornju i/ili donju ivicu slova.
Ova procedura osloba|a korisnika, grubo procenjeno, vi{e od 90%
posla oko hintovanja celog fonta. Bilo kako bilo, preporu~ljivo je
da se izvr{i vizuelna kontrola i manualna dorada!
- Uvedena je jedna finesa kod horizontalnih hintova. Naime, neki
rasterizatori koriste samo prvu koordinatu i {irinu trupa, potpuno
ignori{u}i drugonavedenu koordinatu bez obzira da li se ova poklapa
sa nekom od linija poravnanja (visina velikog slova, malog slova
ili preba~aji za obla slova). Tako se na malim punkta`ama doga|a da
hint, umesto da pobolj{a kvalitet teksta, dovede do sasvim suprotnog
rezultata. Finesa je u tome da se, ukoliko se druga koordinata
poklapa sa nekom od linija poravnanja, forsira njena definicija
na poziciji prve koordinate trupa, a {irina se (po potrebi) negira.
- CorelDRAW! (WFN) format ne sadr`i podatke kao {to su ascentna ili
descentna linija, visina malog ili velikog slova i sl. Da bi se
olak{alo pode{avanje veli~ine opisa, ulazni drajver skalira font
na 1000x1000 em, a ascentna linija pode{ava se na 3/4 em kvadrata.
Pri upisivanju, skaliranje se vr{i iz em kvadrata veli~ine
(Ascentna_linija * 4 / 3) u CorelDRAW! em kvadrat. Na ovaj na~in,
jednostavna promena ascentne linije vodi ka pove}anju ili smanjenju
celog fonta (za pove}anje spustiti, a za umanjenje podi}i ascentnu
liniju). Po ponovnom u~itavanju u Tipotek font se opet skalira u
1000x1000 em kvadrat, a ascentna linija dobija vrednost 750.
- Prilikom u~itavanja URW fontova vr{i se inicijalno mapiranje u
standardni 7-bitni ASCII set. Ovi fontovi, ina~e, interno ne
sadr`e map tabelu.
- Dodatak kod editovanja hintova je informacija o trenutnoj distanci
izme|u ivica trupova u gornjem levom uglu prozora za editovanje.
- Smanjena je veli~ina ta~ki za prikaz re{etke (Grid-a) kako bi
ostali delovi crte`a bili izra`eniji.
- Nova osobina je i generisanje metri~kih (VFM) fajlova za HP bit
mapirane fontove. Pri tome se kreira i procedura za generisanje WID
tabela, koju je mogu}e izvr{iti iz DOS-a. Procedura se kreira u istom
direktorijumu u kome se sme{taju SFP fontovi. Treba napomenuti da
se podrazumeva da WID tabele generi{e program VFMTOWID.EXE, koji
treba da bude dostupan preko PATH-a!
- Interna rutina za aran`iranje efekata imala je (neprijatan) sporedni
efekat da ta~ke u konturi pomera za po jednu poziciju u smeru konture.
Sada je ugra|en mehanizam koji to onemogu}uje, osim u slu~aju kidanja
i ponovnog spajanja lanca.
- Uveden je i jedan kompletno novi re`im rada: crtanje Splajnova.
Op{irnije u fajlu SPLINE.DOK, kao i u On-Line tutorijalu.
- Izbor za prikaz uzorka ili tekstualnog opisa slova dopunjen je i
tre}om vrstom prikaza: odnos teku}eg slova u odnosu na prethodno
odre|ena slova karakteristi~nih oblika. Sugestiju za ovo dao je
Zoran @ivoti} u ~lanku "Bez po muke" (Ra~unari, novembar 1992).
Uz to, ovaj prozor sada je opremljen i ikonama za izbor tipa
prikaza, kao i ikonama specifi~nim za trenutno izabran izgled
prozora.
- Pode{avanje levog pomaka (Left bearing) sada se mo`e vr{iti i
jednostavnim pomeranjem linije markirane sa "L" na isti na~in
kao {to se pode{ava {irina slova (marker "R"). Promenu levog
pomaka prati prilago|avanje {irine tako da desni pomak ostane
nepromenjen.
- Prihva}ena je jo{ jedna ideja Zorana @ivoti}a izneta u istom ~lanku.
Pri tekstualnom prikazu opisa slova mogu}e je vr{iti (de)aktiviranje
jednog ili vi{e segmenata.
Uz to, prihva}en je i predlog Mladena Mozeti}a da se omogu}i i
odre|ivanje koordinata "pe{a~kim" uno{enjem vrednosti preko
tastature, iako mi se ~ini da je ovakav na~in od male prakti~ne
koristi. U najgorem slu~aju, bar je olak{ana promena linijskog u
krivi segment i obratno.
- Umesto ikone za potvrdu/poni{tenje u novoj verziji uvedeni su
tasteri, poput Windows "Pushbutton" dugmi}a. Za razliku od ikona
~iji se izbor vr{i jednostavnim pokazivanjem i pritiskom levog
dugmeta mi{a, kod tastera se izbor vr{i tek otpu{tanjem levog
dugmeta mi{a. Korisnik na ovaj na~in ima priliku da se predomisli
i odustane od potvrde/poni{tenja tako {ti }e da odlo`i osloba|anje
dugmeta mi{a dok ne pomeri pokaziva~ van tastera.
- Izvr{ena su i izvesna pobolj{anja u grafi~kom interfejsu. Iako je
deplasiran i poku{aj pore|enja sa "{mekerskim" Windows ili McIntosh
ekranima, ne o~ekujemo primedbe ~ak ni od strane najprobirljivijih
korisnika.
- Type 3 output je imao neke nepreciznosti koje su prouzrokovale
probleme pri kori{}enju fonta, a otkrivene su zahvaljuju}i
Mladenu \uri}u iz Novog Sada i njegovom intenzivnom testiranju
(na Linotronicu) ~itljivih PostScript fontova generisanih Tipotekom.
Mladenovi nalazi pomogli su da se gre{ke otklone.
- Izba~en je suvi{an prozor(~i}) sa slikom teku}eg slova, a umesto
njega uba~en je mali info-prozor koji prikazuje Standardan Adobe naziv
teku}eg slova, u zavisnosti od toga da li je i gde je ono mapirano.
Imena nemapiranih slova generi{u se kao "** uxxx **" (xxx = indeks opisa
teku}eg slova u fontu). Na ovaj na~in uvek je prisutna informacija o
tome da li je slovo mapirano ili nije.
VIDEO SUBSISTEM
---------------
U cilju pro{irenja broja podr`anih subsistema uvedena je dodatna
mogu}nost izbora video modusa putem komandne linije. Sintaksa
je slede}a:
TIPOTEK -(b,s,w,h,a)...
b BIOS kod funkcije za postavljanje `eljenog video
modusa; parametar je heksadecimalni broj.
s BIOS kod sub-funkcije za postavljanje `eljenog video
modusa; parametar je heksadecimalni broj. Ukoliko
funkcija (b) ne zahteva subfunkciju, parametar se
mo`e izostaviti (vidi primere).
liniji i razli~it od nule.
w [irina ekrana u pixelima; podatak je decimalan broj.
Ovde se mora navesti ta~an broj ta~aka za `eljeni
video modus, da se ne bi izgubila sinhronizacija
u samom Tipoteku.
h Visina ekrana u pixelima; podatak je decimalan broj.
Podatak bi trebalo da odgovara broju sken linija za
dati video modus, premda i manji broj ne}e imati
negativnih efekata (osim {to }e deo ekrana biti
neiskori{}en). Ve}i broj mo`e da dovede do blokiranja
programa.
a Adresa paragrafa gde po~inje video memorija; podatak
je heksadecimalni broj i obi~no iznosi A000. Ukoliko
je pogre{an, slika na ekranu bi}e pomerena. Ukoliko
je izostavljen, pretpostavlja se A000.
Na ovaj na~in mogu}e je koristiti sve video moduse koji ne zahtevaju
vi{e od 64K video memorije (tu je obuhva}ena rezolucija 800x600),
bilo mono, bilo do 16 boja (iako TIPOTEK radi u 'crno-beloj' tehnici).
Video modusi koji konzumiraju vi{e od 64K video memorije (recimo
1024x768) ili sa velikim brojem boja (recimo 256x256) nisu podr`ani
zbog velike raznolikosti u na~inu pristupa memoriji koja se razlikuje
kod mal' te ne svakog proizvo|a~a.
Primeri:
TIPOTEK -(25,,640,480,a000) Tseng ET4000, Orchid Prodesigner VGA
TIPOTEK -(25,,640,480) (isto, pretpostavlja se VDMBASE=a000)
TIPOTEK -(29,,800,600,a000) Orchid, STB, Genoa, Sigma, TSENG ET4000
TIPOTEK -(40,,640,400,b800) AT&T 6300, AT&T VDC600, Compaq Portable
TIPOTEK -(48,,640,400,b800) AT&T 6300, AT&T VDC600
TIPOTEK -(52,,800,600,a000) OAK Technologies VGA-16
TIPOTEK -(54,,800,600,a000) ATI EGA/VGA Wonder
TIPOTEK -(59,,800,600,a000) Paradise VGA
TIPOTEK -(5c,,800,600,a000) Trident TVGA 8800
TIPOTEK -(71,,800,600,a000) NSI Smart EGA+
TIPOTEK -(74,,640,400,b800) Toshiba 3100
TIPOTEK -(d0,,640,400,b800) DEC VAXmate
Potrebni podaci trebalo bi da se nalaze u dokumentaciji dobijenoj
uz video adapter. Ukoliko posedujete i dokumentaciju za ovde
nepodr`ane video moduse, molimo vas da je dostavite INFOTEK-u,
pa }emo poku{ati da obezbedimo podr{ku i za takve slu~ajeve.
=============================================================================
T r e } i d e o (SPLINE.DOK)
=============================================================================
TIPOTEK - SPLINE DODATAK
========================
Novouvedena mogu}nost u verziji 2.xx je crtanje zatvorenih kontura
pomo}u splajnova (Splines) drugog reda.
Kontura je odre|ena nizom ta~aka koje mogu da budu NA konturi ili
VAN konture. Interpolacija se vr{i izme|u dve uzastopne ta~ke NA
konturi izme|u kojih se nalazi po jedna kontrolna ta~ka VAN konture.
U slu~aju dve susedne ta~ke VAN konture, ta~ka NA konturi izme|u
njih nalazi se na sredini linije koja spaja ove ta~ke. Dve susedne
ta~ke NA konturi odre|uju linijski segment.
U principu, ta~ke NA konturi potrebno je definisati samo u slu~aju
kada kontura treba da izgubi kontinualnost, ili za linijski segment.
Ovaj na~in rada bira se drugim uzastopnim izborom operacije crtanja
krivih linija, ili direktno pritiskom na <F7>. Kreiranje konture
sastoji se iz dva koraka.
* 1. korak: definisanje ta~aka
Ta~ke se defini{u u redosledu kojim kontroli{u kretanje konture.
Pritisak na LEVO dugme mi{a odre|uje ta~ku NA konturi na poziciji
pokaziva~a.
Pritisak na DESNO dugme mi{a odre|uje ta~ku VAN konture.
Poslednja ta~ka mo`e se ukloniti operacijom "Undo" - <U> na tastaturi
ili ikona "OOPS".
Poslednjoj ta~ci menja se karakter (NA/VAN) pritiskom na <Space>.
Kontura se zatvara pritiskom <Enter> ili <C> tipke.
* 2. korak: pode{avanje ta~aka
Pozicioniranjem na ta~ku i "klikom" na LEVO dugme bira se teku}a ta~ka.
Teku}a ta~ka biva istaknutije prikazana na ekranu, a istovremeno se
izvla~i i isprekidana linija do prve slede}e ta~ke na konturi.
Pozicioniranjem na ta~ku, pritiskom na LEVO dugme, povla~enjem ta~ke
i otpu{tanjem dugmeta mi{a menja se njen polo`aj.
Pritiskom na <Space> menja se karakter (NA/VAN> teku}e ta~ke.
Sa <Del> se bri{e teku}a ta~ka.
Sa <Ins> se dodaje nova ta~ka iza teku}e, i ova postaje teku}a ta~ka.
Nova ta~ka dobija karakter <NA/VAN> ta~ke iza koje je dodata, {to se
po potrebi sa <Space> mo`e promeniti. Inicijalna pozicija nove ta~ke
je ta~no na sredini linije koja spaja ta~ke izme|u kojih se dodaje.
Po{to kontura dobije potreban izgled uklju~uje se sa <Enter> u opis
teku}eg slova.
U svakom trenutku mogu}e je sa <Esc> prekinuti crtanje konture, bez
promene opisa teku}eg slova.
Pre uklju~ivanja u opis slova krivi segmenti konture se konvertuju
u Bezijerove krive. Konvertovana kontura sadr`a}e onoliko Bezijerovih
segmenata koliko je bilo ta~aka VAN konture.
NAPOMENA: Scenario za crtanje kontura na opisani na~in rezultat je
"meditacija" autora, koji jo{ nema predstavu o njegovoj
(ne)prakti~nosti. Zato je po`eljan i dobrodo{ao svaki
komentar, a pogotovo ideja za njegovo pobolj{anje.