home *** CD-ROM | disk | FTP | other *** search
/ PC Press 1997 July / Sezamfile97_1.iso / msdos / demo / tipotek2.a01 / NAPOMENE.DOC < prev    next >
Text File  |  1993-01-17  |  31KB  |  630 lines

  1.  
  2.     ╔═════════════════════════════════════════════════╗
  3.     ║                                                 ║
  4.     ║   T I P O T E K  -  editor konturnih fontova    ║
  5.     ║                                                 ║
  6.     ║   Napomene uz verziju 2.xx,  decembar 1992      ║
  7.     ║                                                 ║
  8.     ║   (C) INFOTEK, Beograd, Dunavski kej 21         ║
  9.     ║                telefon  011/631-547             ║
  10.     ║                telefaks 011/632-650             ║
  11.     ║                                                 ║
  12.     ╚═════════════════════════════════════════════════╝
  13.  
  14.   Ovaj fajl sastoji se iz tri dela, pisana u toku rada na pobolj{anju i
  15.   pro{irenju programa, uz stalni kontakt autora sa korisnicima programa.
  16.   Tri teksta spojena su ladi lak{eg baratanja u ovaj jedan. Tekstovi su:
  17.  
  18.     1) Napomene
  19.     2) Izmene u odnosu na staru verziju
  20.     3) Ukratko o crtanju splajnova (novo u verziji 2.xx)
  21.  
  22.  
  23.  
  24.  =============================================================================
  25.    P r v i    d e o    (NAPOMENE.DOK)
  26.  =============================================================================
  27.  
  28.   OBAVE[TENJA
  29.   -----------
  30.  
  31.   - Potpunu podr{ku i eventualne revizije pojedinih delova paketa
  32.     ubudu}e }e besplatno imati samo korisnici (kupci) koji su
  33.     uredno izvr{ili registraciju. Registraciju mo`ete izvr{iti
  34.     bilo slanjem od{tampanog fajla TIPOTEK.USR (nalazi se u
  35.     direktorijumu u kome je Tipotek instaliran), bilo slanjem
  36.     diskete sa kopijom fajla na adresu Infoteka.
  37.  
  38.   - Ukoliko ste korisnik SEZAMa, mo`ete preko MAILa kontaktirati
  39.     autora programa (username: MIVEL) u vezi svih problema, saveta,
  40.     upozorenja o eventualnim bugovima ili predlozima.
  41.  
  42.  
  43.  
  44.   NAPOMENE
  45.   ========
  46.  
  47.   1) INI fajl
  48.   -----------
  49.  
  50.   Tipotek slepo po{tuje podatke iz svog INI fajla, {to mo`e da dovede
  51.   do ~udnog pona~anja programa ukoliko je TIPOTEKx.INI izmenjenbilo na
  52.   koji na~in osim samim programom. Efekti su nepredvidljivi, od toga da
  53.   program uop{te ne mo`e da startuje, do neprirodnog   pona{anja, ~udnih
  54.   radnih parametara, o{te}enih tekstova u nekim dijalozima i sl.
  55.  
  56.   U ovom slu~aju jedino re{enje je da se obri{e odgovarajuci INI fajl.
  57.   Tipotek }e tada korektno inicijalizovati sve radne parametre
  58.   pretpostavljenim vrednostima i na kraju seanse generisati ispravan
  59.   INI fajl.
  60.  
  61.  
  62.  
  63.   2) LXO fajlovi
  64.   --------------
  65.  
  66.   Svi ulazni i izlazni drajveri (osim LXO) u pravilu zahtevaju onoliko
  67.   memorije koliko je velik fajl koji se ~ita ili pi{e. Prose~no, to je
  68.   oko 50-70K memorije. Interni format (IFT) malo je op{irniji jer je
  69.   prilagodjen brzom pristupu u memoriji a ne ekonomi~nom  skladi{tenju,
  70.   tako da font po u~itavanju zauzima u tipi~nim slu~ajevima  do 100 K,
  71.   memorije. Iz ovoga proizilazi da Tipotek u principu garantuje siguran
  72.   rad sa tipi~nim font fajlovima ukoliko po startovanju programa raspola`e
  73.   sa oko 170 K memorije. Veli~ina raspolo`ive memorije u svakom se trenutku
  74.   mo`e proveriti pozivom sistema za pomo}: prva strana (sadr`aj) izmedju
  75.   ostalog daje i tu informaciju. Uzimajuci u obzir da je najmanje 64 K
  76.   uvek alocirano za font, ako je na raspolaganju jos 110 K slobodne memorije
  77.   ne}e biti problema sa prose~nim fontovima. Ovaj preduslov je uglavnom vi{e
  78.   nego dvostruko ispunjen, a ukoliko nije, verovatni razlog su prethodno
  79.   startovani rezidentni programi. Voditi ra~una da je Tipotek dizajniran
  80.   tako da garantuje komotan rad sa fontovima koji i dvostruko nadma{uju
  81.   prose~nu veli~inu.
  82.  
  83.   Drajveri za ~itanje i pisanje LXO fontova razlikuju se od drajvera za ostale
  84.   formate utoliko, {to obradjuju karakter po karakter. Samim tim, oni koriste
  85.   onoliko memorije koliko je potrebno da se u~ita zaglavlje fonta, kompletna
  86.   kern tabela i najveca definicija slova (koja u najnepovoljnijem slu~aju
  87.   tesko da moze da prema{i 2-3K), {to je skupa oko 20K. Tako je mogu}e
  88.   obradjivati i LXO fajlove veli~ine 220-230K koji konzumiraju vise od
  89.   300K interne memorije ne ostavljaju}i dovoljno prostora nijednom izlaznom
  90.   drajveru (osim LXO drajveru, prirodno).
  91.  
  92.   Izuzetak kod LXO drajvera napravljen je zbog korisnika LaserMaster
  93.   printera koji su (do pojave Tipoteka) mogli jedino iz Bitstream fontova
  94.   da dobiju kompletan YU-set.
  95.  
  96.   LXO fontovi kreirani iz Bitstream BCO formata obi~no su veliki oko 150K,
  97.   ali neki prelaze i 200K! Tipotek je, pored ostalog, testiran sa fontom
  98.   CE0630.BCO koji konvertovan programom MAKELXO.EXE (font tabela LMEXTEND.FTB)
  99.   daje LXO fajl veli~ine 231104 bajtova. Pri oko 600K memorije slobodne
  100.   memorije (DOS u gornjem memorijskom bloku!) Tipotek je po u~itavanju
  101.   ovog LXO fajla raspolagao sa oko 19K slobodne memorije, {to je jo{ uvek
  102.   bilo dovoljno da izlazni drajver sa~uva (ili upi{e novi) LXO fajl.
  103.   Isto tako, uspe{no je generisan SFP fajl za veli~inu 48 punkta.
  104.   Medjutim, konverzija u bilo koji drugi format u ovom (ekstremnom) slu~aju
  105.   nije mogu}a direktno, ve} samo preko privremenog LXO fonta u koji se
  106.   upi{u samo mapirani znaci.
  107.  
  108.  
  109.  
  110.   3) Adobe Type 3 format
  111.   ----------------------
  112.  
  113.   Fontovi sa~uvani u ovom formatu mogu da koriste kompletan set PostScript
  114.   instrukcija, tako da bi, za apsolutno korektno ~itanje svih fajlova, bilo
  115.   neophodno napraviti pravi PostScript interpreter. Zbog toga se odustalo od
  116.   ulazne podr{ke ovog formata, dok se za generisanje izlaznog formata uglavnom
  117.   po{tuju uputstva iz Adobe Systems Inc.: PostScript Language - Tutorial and
  118.   CookBook.
  119.  
  120.   Kao alternativa, font se mo`e eksportovati u malo izmenjenom obliku
  121.   tako da je mogu}a njegova konverzija ZSoft-ovim programom TFPOSTSC.EXE
  122.   u Publisher's Type Foundry OTL format. Voditi ra~una da se na ovaj
  123.   na~in gube svi hintovi definisani interaktivno, a da se mo`e iskoristiti
  124.   PTF opcija automatskog hintovanja za eventualnu dalju konverziju pomo}u
  125.   paketa SoftType. Automatski hintovani fontovi u svakom slu~aju ne}e
  126.   biti idealni.
  127.  
  128.  
  129.  
  130.   4) "Fantomski" segmenti
  131.   -----------------------
  132.  
  133.   Ekstremno mali segmenti mogu prilikom umanjivanja da proizvedu neobi~an
  134.   efekat: po~etna i krajnja ta~ka segmenta imaju jednake koordinate.
  135.   U takvom slucaju Tipotek isklju~uje segment iz teku}e konture, ali
  136.   ga zadrzava u opisu slova - tekstualan opis izgleda}e otprilike ovako:
  137.          M 45,68
  138.         L 45,68
  139.   odnosno pomak do ta~ke (45,68), a zatim linija du`ine 0 do iste ta~ke.
  140.  
  141.   Ovakav segment mo`e se izbaciti na slede}i nacin:
  142.       a) pritisnuti "S" da se osigura aktivnost svih segmenata i
  143.          omogu}iti prikaz kontrolnih ta~aka
  144.       b) pre}i u proceduru izbora segmenata (ikona koja predstavlja
  145.          ruku sa ispru`enim kaziprstom, ili br`e: Ctrl-S)
  146.       c) ozna~iti mali blok oko lako uo~ljive oznake za otvoreni segment
  147.       d) pritisnuti "A" da se svi segmenti deaktiviraju, a ozna~eni
  148.          segment aktivira
  149.       e) obrisati aktivne segmente sa <Del>
  150.       f) sa~uvati definiciju
  151.   Drugi na~in je preko prozora sa tekstualnim opisom:
  152.       a) deaktivirati sve segment (tipka "S", zatim tipka "A")
  153.       b) "klik" na ozna~enu liniju ili linije
  154.       c) obrisati aktivne segmente sa <Del>
  155.       d) sa~uvati definiciju
  156.  
  157.  
  158.  
  159.   5) Adobe Type 1 generisani programom FontMonger 1.0 for Windows
  160.   ---------------------------------------------------------------
  161.  
  162.   ^udne stvari se doga|aju sa kompozitnim karakterima u ovim fajlovima.
  163.   Verovatni uzrok je odstupanje od Adobe standardnog mapiranja u programu
  164.   FontMonger {to je, prema Adobe dokumentaciji, u slu~aju standardnih
  165.   akcentiranih karaktera nedopustivo.
  166.   Da je problem u FontMongeru, a ne u Tipoteku, potvr|uje ~injenica da
  167.   nakon konverzije istog Type 1 fajla programom WFNBOSS iz CorelDRAW!
  168.   paketa u WFN fajl, CorelDRAW! javlja nepopravljivu gre{ku pri kori{}enju
  169.   nekih karaktera iz gornjeg ( > 128 ) dela seta.
  170.   Bilo kako bilo, Tipotek mo`e da ispravi ovu gre{ku tako {to se font
  171.   ponovo sa~uva u Type 1 formatu.
  172.  
  173.  
  174.  =============================================================================
  175.    D r u g i    d e o   (ISPRAVKE.DOK)
  176.  =============================================================================
  177.  
  178.  T I P O T E K  v1.24 i v2.xx - ISPRAVKE I DOPUNE
  179.  ================================================
  180.  
  181.  Ispravke
  182.  --------
  183.  
  184.   * "Kod upisivanja Type 1 fajla neka slova se gube!" (upozorava
  185.      Mladen Mozeti}, Novi Sad)
  186.   - Stara verzija drajvera ~uvala je samo mapirane znake (jer samo oni
  187.     imaju imena).
  188.     U novoj verziji drajvera mogu da se ~uvaju i znaci koji nisu mapirani,
  189.     tako {to im se dodeli ime "/uxxx", gde je xxx indeks slova u fajlu.
  190.     Imati u vidu da se ovi znaci ne nalaze u standardnoj Adobe tabeli,
  191.     i da ih aplikacije ne mogu koristiti dok se ne mapiraju na neko od
  192.     standardnih mesta. Odluku o tome da li se ~uvaju svi znaci ili samo
  193.     mapirani donosi korisnik u dijalogu za izbor formata.
  194.  
  195.  
  196.   * "Word for Windows ne uzima u obzir kern podatke" (signalizira Sa{a
  197.      Stanojkovi}, Beograd)
  198.   - Gre{ka je bila u generisanju PFM fajlova gde su kern parovi bili
  199.     sortirani prema prvom slovu, dok je konvencija da se sortira po
  200.     drugom ~lanu para. Nova verzija to po{tuje!
  201.  
  202.   * "Kretanje mi{a ostavlja trag na ekranu. Koristim WYSE-700 video
  203.      adapter." (javlja Jovan Regasek, urednik "Ra~unara", Beograd).
  204.   - Prouzrokovano pogre{nim pra}enjem benka video memorije za teku}u
  205.     sken liniju. Sada je to otklonjeno.
  206.  
  207.   * "Imam problema sa u~itavanjem LaserMaster fontova generisanih
  208.      konverzijom Bitstream BCO fajlova" (Mladen Mozeti}, Novi Sad)
  209.   - Bitstream BCO je op{iran opis koji zauzima mnogo prostora. U staroj
  210.     verziji drajvera u cilju br`eg dekriptovanja ceo font je bio ~uvan
  211.     u memoriji u toku konverzije, tako da nije bilo dovoljno mesta za
  212.     radni bafer. U novoj verziji ovo je prevazi|eno tako {to se
  213.     LXO fontovi obra|uju karakter po karakter, pa je mogu}e u~itavati
  214.     i fajlove od preko 200 Kb. Ovo pro{irenje izvr{eno je po cenu sporijeg
  215.     u~itavanja.
  216.  
  217.   * "Kod PFB fajlova trupovi za akcente su pogre{no postavljeni, dok
  218.     su trupovi za ostatak slova dobri: (prime}uje Mladen Mozeti}).
  219.   - Propust autora: radi se o tzv. kompozitnim znacima, tj. kombinaciji
  220.     opisa dva (ili vi{e) slova. Kod baznog slova sve je OK, ali kod drugog
  221.     dela zaboravljen je pomak u odnosu na originalnu definiciju. Propust je
  222.     ispravljen.
  223.  
  224.   * "Presecanjem krive 'no`i}em' ponekad dobijam dve sasvim pogre{ne
  225.      krive" (javlja Branko Ladavac, {tamparija PTT, Beograd)
  226.   - Uzrok pogre{nog prora~una je bio u premisi algoritma da se kriva koja
  227.     se se~e i linija koja je se~e kre}u idealnom putanjom, koju je nemogu}e
  228.     posti}i pri ekranskoj rezoluciji i ponekad rezultira odstupanjem ugla
  229.     tangente koja dodiruje krivu.
  230.     Funkcija se sada izvr{ava po kompletno novom algoritmu koji najpre
  231.     izra~unava odnos du`ina krive pre i posle prese~ne ta~ke, a zatim
  232.     vr{i subdiviziju originalne krive. Sporedan efekat ove metode je
  233.     taj da se polo`aj ta~ke preseka prilago|ava idealnom kretanju krive,
  234.     pa polo`aj dobijene prese~ne ta~ke mo`e da minimalno odstupa od onog
  235.     koji se vidi na ekranu (u pravilu ne vi{e od jedne ta~ke em-kvadrata).
  236.     UPOZORENJE: ako se kriva deli blizu kontolne ta~ke, odnosno ako je
  237.                 velika nesrazmera u du`inama novonastalih krivih, mogu}e
  238.                 je malo odstupanje od inicijalne krive.
  239.  
  240.   * "Kod nekih URW fontova poslednje slovo se mapira u svim }elijama do
  241.      kraja tabele" (obave{tava Rade Vesovi}, Beograd)
  242.     Ovo je slu~aj kod "kusih" fontova u URW Nimbus-Q formatu, odnosno
  243.     fontova sa nepotpunim setom slova. Ova ne toliko gre{ka koliko
  244.     mala neprijatnost za korisnika sada je fiksirana.
  245.  
  246.   * "Pozvao sam instalacioni program sa B:INST, ali dobio sam poruku
  247.      'Drive A Not Ready". Nakon toga tastatura se blokirala i morao
  248.      sam da resetujem ra~unar!" (Jovan Regasek)
  249.     Uzrok je gre{ka u instalacionoj proceduri koja je morala biti
  250.     startovana sa instalacionom disketom u teku}em drajvu. Problem
  251.     je otklonjen!
  252.  
  253.   * "Generisao sam SFP fontove, i kad sam ih {tampao nisam dobio ni{ta
  254.      na papiru" (Goran Bradi}, Beograd).
  255.     Autorova gre{ka - 'orientation' bajt u opisu karaktera bio je
  256.     gre{kom postavljen na "Landscape". Svim kupcima hitno je poslata
  257.     ispravljena verzija drajvera D$SFPOUT.DRV, uz veliko izvinjenje!
  258.  
  259.   * "Program AFMTOVFM iz paketa Ventura Publisher (3.0) javlja gre{ku
  260.      'Divide overflow'!" (Milo{ Mitrovi} - Shomi, Beograd).
  261.     Problem je fiksiran i otklonjen! Gre{ka je bila parametru u liniji
  262.     'StartCharStrings #' ~ija je vrednost bila za 1 ve}a od stvarnog
  263.     broja karaktera (ina~e, u daleko najve}em broju pogre{nih vrednosti
  264.     u programiranju razlika od stvarne je 1 !!!! ).
  265.  
  266.   * "Proveriti pokaziva~ u obliku {ake sa ispru`enim ka`iprstom!?"
  267.      (Du{an Georgijevi}, Crepaja).
  268.     Zar se {esti prst ne mo`e shvatiti kao umetni~ka sloboda? [alu na
  269.     stranu, prst je "amputiran"!
  270.  
  271.     Zahvaljujem se najlep{e na svim upozorenjima!
  272.  
  273.  Dodaci
  274.  ------
  275.  
  276.    - Prikaz re{etke (Grid). Sada je mogu}e zahtevati da se u prozoru
  277.      za editovanje slova prika`e ta~kasta re{etka kao pomo} u orijentaciji
  278.      korisnika. Distanca izme|u ta~aka uskla|uje se sa distancom izme|u
  279.      podeoka lenjira.
  280.  
  281.    - Prikaz uzorka. Algoritam za prikaz rasterskog uzorka prera|en je
  282.      tako da bude senzitivan na slu~aj kada razli~ite ta~ke padaju u
  283.      iste koordinate. Na taj na~in, "par-nepar" algoritam ne mo`e vi{e
  284.      da "polupa lon~i}e" {ta je unutar, a {ta izvan konture.
  285.  
  286.    - Tekstualan opis slova. Izmenjen je ispis trupova tako {to se
  287.      kao prvi podatak daje {irina trupa, a zatim njegove koordinate.
  288.      Tako se posti`e bolja preglednost definicija trupova i lak{e
  289.      uo~avanje eventualnih nedoslednosti.
  290.  
  291.    - Editovanje kern parova. Ovde je dodata mogu}nost globalnog pove}anja
  292.      ili smanjenja razmaka izme|u svakog od definisanih kern parova.
  293.      Funkcija je korisna zbog toga {to se po u~itavanju ve} definisanih
  294.      parova iznosi korekcija mogu brzo prilagoditi tipu fonta.
  295.  
  296.    - Drajveri preure|eni tako da je izostavljeno ponavljanje istovetnih
  297.      delova koda. Nema nikakve razlike u njihovom izvr{avanju, ali je
  298.      izbegnuto nepotrebno multipliciranje u fajlovima i zauze}e disk
  299.      prostora.
  300.  
  301.    - Promenu krivog u pravi segment i obratno mogu}e je izvr{iti
  302.      u momentu kada nije aktivan nijedan modus u prozoru za editovanje,
  303.      odnosno kada su ikone za zumiranje, izbor segmenata, crtanje prave
  304.      ili krive linije, editovanje, pomeranje, skaliranje ili editivanje
  305.      hintova bele. Pokazivanje na `eljeni segment i pritisak na DESNO
  306.      dugme mi{a promeni}e tip segmenta (linija/kriva). Ova osobina nije
  307.      dokumentovana iz jednostavnog razloga {to autor nije siguran da li
  308.      je za promenu linije u krivu izabran najprakti~niji na~in odre|ivanja
  309.      kontrolnih ta~aka - svaka ideja je dobrodo{la!
  310.  
  311.  
  312.  Izmene i dopune u verziji 2.xx
  313.  ------------------------------
  314.  
  315.    - Prilikom instalacije, sistemski fajlovi se kao i ranije kreiraju
  316.      u direktorijumu koji odredi korisnik. Medjutim, prate}i fajlovi
  317.      (mape, kern parovi, uzorci fontova i slika) instaliraju se u
  318.      poddirektorijumu "TIP" tog direktorijuma. Ovo omogu}ava korisniku
  319.      da po `elji obri{e neki ili sve prate}e fajlove, bez opasnisti
  320.      da }e gre{kom ukloniti i neki od "sistemskih" fajlova (drajver,
  321.      help, tutorijal i sl.).
  322.  
  323.    - Najva`nija novost je podr{ka TrueType formata. Treba, me|utim,
  324.      napomenuti da je ovo vrlo kompleksan format, a to se posebno
  325.      odnosi na tzv. instrukcije (ekvivalent hintovima kod ostalih
  326.      formata), i da }e sigurno drajveri pretrpeti naknadne revizije
  327.      i pobolj{anja. U svakom slu~aju, registrovani korisnici }e
  328.      besplatno dobijati nove verzije. Zato, NEMOJTE PROPUSTITI DA
  329.      IZVR[ITE REGISTRACIJU!
  330.  
  331.    - Prilikom u~itavanja TrueType formata vr{i se konverzija splajnova
  332.      u linijske i Bezijerove krive segmente. Ovo ~esto rezultira ne{to
  333.      neekonomi~nijim brojem segmenata koji se mogu lako i veoma precizno
  334.      izbe}i automatskom procedurom. Ipak, u skladu sa filozofijom
  335.      Tipoteka da dozvoli korisniku {to ve}u kontrolu nad fontom, ulazni
  336.      drajver ne vr{i ovu konverziju, ve} je ostavljena mogu}nost korisniku
  337.      da redukciju segmenata zahteva putem dijaloga za promenu slova ili
  338.      celog fonta.
  339.      Redukuju se samo susedni krivi segmenti kod kojih je jednako
  340.      rastojanje kontrolnih ta~aka od ta~ke spoja (sa tolerancijom +/-1),
  341.      a kontrolne linije nisu paralelne sa apscisom ili ordinatom.
  342.      Takvi segmenti bezbedno se spajaju u jedan krivi segment, bez
  343.      vidnog gubitka preciznosti krive, premda se minimalno odstupanje
  344.      ne mo`e izbe}i zbog ~injenice da se rezultati zaokru`uju na ceo
  345.      broj. Ukupna veli~ina opisa slova se ovom akcijom mo`e smanjiti
  346.      kod gotovo svih fontova, ali je razlika najo~iglednija kod
  347.      konvertovanih TrueType fajlova gde redukcija rezultira i do
  348.      30% manjim prostorom!
  349.  
  350.    - Kopiranje grupe slova mogu}e je izvr{iti iz font fajlova u
  351.      internom (.IFT) formatu putem dugmeta "+" u dijalogu za
  352.      u~itavanje font fajla. Opisi svih slova ~iji se indeksi
  353.      nalaze u mapi .IFT fajla bi}e uklju~eni u teku}i font.
  354.      Ovo zna~i da se izbor grupe slova koja se eksportuju iz
  355.      jednog font fajla u drugi vr{i na taj na~in, {to se u
  356.      izvornom fontu najpre isprazni teku}a mapa, a zatim popuni
  357.      indeksima `eljenih slova (redosled nije bitan!), font sa
  358.      novom mapom sa~uva u (privremeni) .IFT fajl, i po u~itavanju
  359.      odredi{nog fonta putem dijaloga za u~itavanje i dugmeta
  360.      "+" izabere isti .IFT fajl. Uklju~ena slova se pri tome
  361.      skaliraju proporcionalno odnosu veli~ina velikih slova
  362.      ili, ukoliko u jednom ili oba fonta nije definisana linija
  363.      poravnanja velikih slova, proporcionalno odnosu razlika
  364.      ascentne i descentne linije.
  365.  
  366.    - Standardno brisanje definicije slova (DEL) ne ostavlja (prazan)
  367.      ~lan u tabeli indeksa. Ovaj ~lan mo`e se po potrebi ukloniti
  368.      ako se brisanje izvr{i izborom reda "Bri{i" u dijalogu za
  369.      promenu zaglavlja slova ili br`e kombinacijom Ctl-END na
  370.      tastaturi. Imati u vidu da se ovom akcijom opis slova i
  371.      indeks nepovratno bri{u (ne pamte se u klip-baferu).
  372.  
  373.    - Kod kopiranja iz klip-bafera (klip-fajla) u opis slova
  374.      pretpostavlja se da mu prethodi deaktiviranje svih starih
  375.      segmenata, a prva slede}a akcija je preme{tanje definicije.
  376.      U cilju smanjenja broja radnji koje korisnik treba da
  377.      izvr{i, sada se pre uklju~ivanja sadr`aja svi segmenti
  378.      automatski deaktiviraju, a potom osigurava edit modus:
  379.      preme{tanje segmenata.
  380.  
  381.    - Nova i vrlo korisna opcija je AUTOMATSKO HINTOVANJE, a dodata
  382.      je u dijalog za promenu znaka ili globalnu promenu fonta.
  383.      Algoritam defini{e hintove za sve crne (ponekad sive) horizontalne
  384.      i vertikalne trupove koji nisu {iri od jedne petine {irine okvira
  385.      za ceo font. Za slova koja nisu hintovana pri vrhu i/ili pri dnu
  386.      dodaju se tzv. "fantomski trupovi" potrebni ve}ini PostScript
  387.      rasterizatora da lokalizuju gornju i/ili donju ivicu slova.
  388.      Ova procedura osloba|a korisnika, grubo procenjeno, vi{e od 90%
  389.      posla oko hintovanja celog fonta. Bilo kako bilo, preporu~ljivo je
  390.      da se izvr{i vizuelna kontrola i manualna dorada!
  391.  
  392.    - Uvedena je jedna finesa kod horizontalnih hintova. Naime, neki
  393.      rasterizatori koriste samo prvu koordinatu i {irinu trupa, potpuno
  394.      ignori{u}i drugonavedenu koordinatu bez obzira da li se ova poklapa
  395.      sa nekom od linija poravnanja (visina velikog slova, malog slova
  396.      ili preba~aji za obla slova). Tako se na malim punkta`ama doga|a da
  397.      hint, umesto da pobolj{a kvalitet teksta, dovede do sasvim suprotnog
  398.      rezultata. Finesa je u tome da se, ukoliko se druga koordinata
  399.      poklapa sa nekom od linija poravnanja, forsira njena definicija
  400.      na poziciji prve koordinate trupa, a {irina se (po potrebi) negira.
  401.  
  402.    - CorelDRAW! (WFN) format ne sadr`i podatke kao {to su ascentna ili
  403.      descentna linija, visina malog ili velikog slova i sl. Da bi se
  404.      olak{alo pode{avanje veli~ine opisa, ulazni drajver skalira font
  405.      na 1000x1000 em, a ascentna linija pode{ava se na 3/4 em kvadrata.
  406.      Pri upisivanju, skaliranje se vr{i iz em kvadrata veli~ine
  407.      (Ascentna_linija * 4 / 3) u CorelDRAW! em kvadrat. Na ovaj na~in,
  408.      jednostavna promena ascentne linije vodi ka pove}anju ili smanjenju
  409.      celog fonta (za pove}anje spustiti, a za umanjenje podi}i ascentnu
  410.      liniju). Po ponovnom u~itavanju u Tipotek font se opet skalira u
  411.      1000x1000 em kvadrat, a ascentna linija dobija vrednost 750.
  412.  
  413.    - Prilikom u~itavanja URW fontova vr{i se inicijalno mapiranje u
  414.      standardni 7-bitni ASCII set. Ovi fontovi, ina~e, interno ne
  415.      sadr`e map tabelu.
  416.  
  417.    - Dodatak kod editovanja hintova je informacija o trenutnoj distanci
  418.      izme|u ivica trupova u gornjem levom uglu prozora za editovanje.
  419.  
  420.    - Smanjena je veli~ina ta~ki za prikaz re{etke (Grid-a) kako bi
  421.      ostali delovi crte`a bili izra`eniji.
  422.  
  423.    - Nova osobina je i generisanje metri~kih (VFM) fajlova za HP bit
  424.      mapirane fontove. Pri tome se kreira i procedura za generisanje WID
  425.      tabela, koju je mogu}e izvr{iti iz DOS-a. Procedura se kreira u istom
  426.      direktorijumu u kome se sme{taju SFP fontovi. Treba napomenuti da
  427.      se podrazumeva da WID tabele generi{e program VFMTOWID.EXE, koji
  428.      treba da bude dostupan preko PATH-a!
  429.  
  430.    - Interna rutina za aran`iranje efekata imala je (neprijatan) sporedni
  431.      efekat da ta~ke u konturi pomera za po jednu poziciju u smeru konture.
  432.      Sada je ugra|en mehanizam koji to onemogu}uje, osim u slu~aju kidanja
  433.      i ponovnog spajanja lanca.
  434.  
  435.    - Uveden je i jedan kompletno novi re`im rada: crtanje Splajnova.
  436.      Op{irnije u fajlu SPLINE.DOK, kao i u On-Line tutorijalu.
  437.  
  438.    - Izbor za prikaz uzorka ili tekstualnog opisa slova dopunjen je i
  439.      tre}om vrstom prikaza: odnos teku}eg slova u odnosu na prethodno
  440.      odre|ena slova karakteristi~nih oblika. Sugestiju za ovo dao je
  441.      Zoran @ivoti} u ~lanku "Bez po muke" (Ra~unari, novembar 1992).
  442.      Uz to, ovaj prozor sada je opremljen i ikonama za izbor tipa
  443.      prikaza, kao i ikonama specifi~nim za trenutno izabran izgled
  444.      prozora.
  445.  
  446.    - Pode{avanje levog pomaka (Left bearing) sada se mo`e vr{iti i
  447.      jednostavnim pomeranjem linije markirane sa "L" na isti na~in
  448.      kao {to se pode{ava {irina slova (marker "R"). Promenu levog
  449.      pomaka prati prilago|avanje {irine tako da desni pomak ostane
  450.      nepromenjen.
  451.  
  452.    - Prihva}ena je jo{ jedna ideja Zorana @ivoti}a izneta u istom ~lanku.
  453.      Pri tekstualnom prikazu opisa slova mogu}e je vr{iti (de)aktiviranje
  454.      jednog ili vi{e segmenata.
  455.      Uz to, prihva}en je i predlog Mladena Mozeti}a da se omogu}i i
  456.      odre|ivanje koordinata "pe{a~kim" uno{enjem vrednosti preko
  457.      tastature, iako mi se ~ini da je ovakav na~in od male prakti~ne
  458.      koristi. U najgorem slu~aju, bar je olak{ana promena linijskog u
  459.      krivi segment i obratno.
  460.  
  461.    - Umesto ikone za potvrdu/poni{tenje u novoj verziji uvedeni su
  462.      tasteri, poput Windows "Pushbutton" dugmi}a. Za razliku od ikona
  463.      ~iji se izbor vr{i jednostavnim pokazivanjem i pritiskom levog
  464.      dugmeta mi{a, kod tastera se izbor vr{i tek otpu{tanjem levog
  465.      dugmeta mi{a. Korisnik na ovaj na~in ima priliku da se predomisli
  466.      i odustane od potvrde/poni{tenja tako {ti }e da odlo`i osloba|anje
  467.      dugmeta mi{a dok ne pomeri pokaziva~ van tastera.
  468.  
  469.    - Izvr{ena su i izvesna pobolj{anja u grafi~kom interfejsu. Iako je
  470.      deplasiran i poku{aj pore|enja sa "{mekerskim" Windows ili McIntosh
  471.      ekranima, ne o~ekujemo primedbe ~ak ni od strane najprobirljivijih
  472.      korisnika.
  473.  
  474.    - Type 3 output je imao neke nepreciznosti koje su prouzrokovale
  475.      probleme pri kori{}enju fonta, a otkrivene su zahvaljuju}i
  476.      Mladenu \uri}u iz Novog Sada i njegovom intenzivnom testiranju
  477.      (na Linotronicu) ~itljivih PostScript fontova generisanih Tipotekom.
  478.      Mladenovi nalazi pomogli su da se gre{ke otklone.
  479.  
  480.    - Izba~en je suvi{an prozor(~i}) sa slikom teku}eg slova, a umesto
  481.      njega uba~en je mali info-prozor koji prikazuje Standardan Adobe naziv
  482.      teku}eg slova, u zavisnosti od toga da li je i gde je ono mapirano.
  483.      Imena nemapiranih slova generi{u se kao "** uxxx **" (xxx = indeks opisa
  484.      teku}eg slova u fontu). Na ovaj na~in uvek je prisutna informacija o
  485.      tome da li je slovo mapirano ili nije.
  486.  
  487.  
  488.   VIDEO SUBSISTEM
  489.   ---------------
  490.  
  491.      U cilju pro{irenja broja podr`anih subsistema uvedena je dodatna
  492.      mogu}nost izbora video modusa putem komandne linije. Sintaksa
  493.      je slede}a:
  494.  
  495.         TIPOTEK -(b,s,w,h,a)...
  496.  
  497.                 b  BIOS kod funkcije za postavljanje `eljenog video
  498.                    modusa; parametar je heksadecimalni broj.
  499.                 s  BIOS kod sub-funkcije za postavljanje `eljenog video
  500.                    modusa; parametar je heksadecimalni broj. Ukoliko
  501.                    funkcija (b) ne zahteva subfunkciju, parametar se
  502.                    mo`e izostaviti (vidi primere).
  503.                    liniji i razli~it od nule.
  504.                 w  [irina ekrana u pixelima; podatak je decimalan broj.
  505.                    Ovde se mora navesti ta~an broj ta~aka za `eljeni
  506.                    video modus, da se ne bi izgubila sinhronizacija
  507.                    u samom Tipoteku.
  508.                 h  Visina ekrana u pixelima; podatak je decimalan broj.
  509.                    Podatak bi trebalo da odgovara broju sken linija za
  510.                    dati video modus, premda i manji broj ne}e imati
  511.                    negativnih efekata (osim {to }e deo ekrana biti
  512.                    neiskori{}en). Ve}i broj mo`e da dovede do blokiranja
  513.                    programa.
  514.                 a  Adresa paragrafa gde po~inje video memorija; podatak
  515.                    je heksadecimalni broj i obi~no iznosi A000. Ukoliko
  516.                    je pogre{an, slika na ekranu bi}e pomerena. Ukoliko
  517.                    je izostavljen, pretpostavlja se A000.
  518.  
  519.         Na ovaj na~in mogu}e je koristiti sve video moduse koji ne zahtevaju
  520.         vi{e od 64K video memorije (tu je obuhva}ena rezolucija 800x600),
  521.         bilo mono, bilo do 16 boja (iako TIPOTEK radi u 'crno-beloj' tehnici).
  522.         Video modusi koji konzumiraju vi{e od 64K video memorije (recimo
  523.         1024x768) ili sa velikim brojem boja (recimo 256x256) nisu podr`ani
  524.         zbog velike raznolikosti u na~inu pristupa memoriji koja se razlikuje
  525.         kod mal' te ne svakog proizvo|a~a.
  526.  
  527.         Primeri:
  528.  
  529.         TIPOTEK -(25,,640,480,a000)    Tseng ET4000, Orchid Prodesigner VGA
  530.         TIPOTEK -(25,,640,480)         (isto, pretpostavlja se VDMBASE=a000)
  531.         TIPOTEK -(29,,800,600,a000)    Orchid, STB, Genoa, Sigma, TSENG ET4000
  532.         TIPOTEK -(40,,640,400,b800)    AT&T 6300, AT&T VDC600, Compaq Portable
  533.         TIPOTEK -(48,,640,400,b800)    AT&T 6300, AT&T VDC600
  534.         TIPOTEK -(52,,800,600,a000)    OAK Technologies VGA-16
  535.         TIPOTEK -(54,,800,600,a000)    ATI EGA/VGA Wonder
  536.         TIPOTEK -(59,,800,600,a000)    Paradise VGA
  537.         TIPOTEK -(5c,,800,600,a000)    Trident TVGA 8800
  538.         TIPOTEK -(71,,800,600,a000)    NSI Smart EGA+
  539.         TIPOTEK -(74,,640,400,b800)    Toshiba 3100
  540.         TIPOTEK -(d0,,640,400,b800)    DEC VAXmate
  541.  
  542.         Potrebni podaci trebalo bi da se nalaze u dokumentaciji dobijenoj
  543.         uz video adapter. Ukoliko posedujete i dokumentaciju za ovde
  544.         nepodr`ane video moduse, molimo vas da je dostavite INFOTEK-u,
  545.         pa }emo poku{ati da obezbedimo podr{ku i za takve slu~ajeve.
  546.  
  547.  
  548.  =============================================================================
  549.     T r e } i    d e o   (SPLINE.DOK)
  550.  =============================================================================
  551.  
  552.  
  553.    TIPOTEK - SPLINE DODATAK
  554.    ========================
  555.  
  556.    Novouvedena mogu}nost u verziji 2.xx je crtanje zatvorenih kontura
  557.    pomo}u splajnova (Splines) drugog reda.
  558.  
  559.    Kontura je odre|ena nizom ta~aka koje mogu da budu NA konturi ili
  560.    VAN konture. Interpolacija se vr{i izme|u dve uzastopne ta~ke NA
  561.    konturi izme|u kojih se nalazi po jedna kontrolna ta~ka VAN konture.
  562.    U slu~aju dve susedne ta~ke VAN konture, ta~ka NA konturi izme|u
  563.    njih nalazi se na sredini linije koja spaja ove ta~ke. Dve susedne
  564.    ta~ke NA konturi odre|uju linijski segment.
  565.  
  566.    U principu, ta~ke NA konturi potrebno je definisati samo u slu~aju
  567.    kada kontura treba da izgubi kontinualnost, ili za linijski segment.
  568.  
  569.  
  570.    Ovaj na~in rada bira se drugim uzastopnim izborom operacije crtanja
  571.    krivih linija, ili direktno pritiskom na <F7>. Kreiranje konture
  572.    sastoji se iz dva koraka.
  573.  
  574.  
  575.    * 1. korak: definisanje ta~aka
  576.  
  577.      Ta~ke se defini{u u redosledu kojim kontroli{u kretanje konture.
  578.  
  579.      Pritisak na LEVO dugme mi{a odre|uje ta~ku NA konturi na poziciji
  580.      pokaziva~a.
  581.  
  582.      Pritisak na DESNO dugme mi{a odre|uje ta~ku VAN konture.
  583.  
  584.      Poslednja ta~ka mo`e se ukloniti operacijom "Undo" - <U> na tastaturi
  585.      ili ikona "OOPS".
  586.  
  587.      Poslednjoj ta~ci menja se karakter (NA/VAN) pritiskom na <Space>.
  588.  
  589.      Kontura se zatvara pritiskom <Enter> ili <C> tipke.
  590.  
  591.  
  592.    * 2. korak: pode{avanje ta~aka
  593.  
  594.      Pozicioniranjem na ta~ku i "klikom" na LEVO dugme bira se teku}a ta~ka.
  595.      Teku}a ta~ka biva istaknutije prikazana na ekranu, a istovremeno se
  596.      izvla~i i isprekidana linija do prve slede}e ta~ke na konturi.
  597.  
  598.      Pozicioniranjem na ta~ku, pritiskom na LEVO dugme, povla~enjem ta~ke
  599.      i otpu{tanjem dugmeta mi{a menja se njen polo`aj.
  600.  
  601.  
  602.      Pritiskom na <Space> menja se karakter (NA/VAN> teku}e ta~ke.
  603.  
  604.      Sa <Del> se bri{e teku}a ta~ka.
  605.  
  606.      Sa <Ins> se dodaje nova ta~ka iza teku}e, i ova postaje teku}a ta~ka.
  607.      Nova ta~ka dobija karakter <NA/VAN> ta~ke iza koje je dodata, {to se
  608.      po potrebi sa <Space> mo`e promeniti. Inicijalna pozicija nove ta~ke
  609.      je ta~no na sredini linije koja spaja ta~ke izme|u kojih se dodaje.
  610.  
  611.      Po{to kontura dobije potreban izgled uklju~uje se sa <Enter> u opis
  612.      teku}eg slova.
  613.  
  614.    U svakom trenutku mogu}e je sa <Esc> prekinuti crtanje konture, bez
  615.    promene opisa teku}eg slova.
  616.  
  617.  
  618.    Pre uklju~ivanja u opis slova krivi segmenti konture se konvertuju
  619.    u Bezijerove krive. Konvertovana kontura sadr`a}e onoliko Bezijerovih
  620.    segmenata koliko je bilo ta~aka VAN konture.
  621.  
  622.  
  623.    NAPOMENA: Scenario za crtanje kontura na opisani na~in rezultat je
  624.              "meditacija" autora, koji jo{ nema predstavu o njegovoj
  625.              (ne)prakti~nosti. Zato je po`eljan i dobrodo{ao svaki
  626.              komentar, a pogotovo ideja za njegovo pobolj{anje.
  627.  
  628.  
  629.  
  630.