poznamka

Petr Olsak olsak at math.feld.cvut.cz
Fri Feb 4 09:06:08 CET 1994


> Dobry den,
>
> nedavno som presiel z emTexu na csTex. Najneprijemnejsim problemom, s
> ktorym som sa stretol (hlavne pri dvojstlpcovej sadzbe) boli nerovnake
> vzdialenosti medzi riadkami. Zrejme sa jedna o nespravne vysky a hlbky
> pismen. Pricinu som hlbsie neskumal, lebo sa da lahko odstranit -- je
> potrebne dat vhodny zaporny \lineskip. Osvedcilo sa napriklad:
> \normallineskip-3pt \normallineskiplimit0pt \normalbaselineskip?pt
> \normalbaselines.
>
Taktez dobry den vsem preji,

jsem velmi rad, ze jste tuto poznamku zverejnil. Nejde jen o
dvousloupcovou sazbu, ale i o kazdou kvalitni sazbu. Radky musi licovat,
kdyz se na ne clovek podiva "krz papir" proti svetlu v kazde dobre
knize. Bohuzel, akcenty nad velkymi pismeny toto pravidlo pri sazbe
desetibodovym pismem s baselineskipem 10, 11 a nekdy i 12 porusi.
Problem je v tom, ze v nasich sazarnach se tvar pismene odleval na
kuzelku ponekud nize (aby zbylo misto pro akcenty), zatimco Knuth
pri navrhu cm-fontu na to samozrejme nemyslel. Jeho hacek je take velice
mrnavy.

Protoze se pri vyvoji cs fontu vyslo z cm fontu a klade se stale duraz
na kompatibilitu, mame tedy abstraktni kuzelku na niz jsou pismena
nakreslena tak, ze se tam hacky proste nevejdou. Proto kazdy akcent
nad velkym pismenem vycniva (napr. pri sazbe desetibodovym pismem z
jakehosi pasku o vysce deset bodu, ktery pri rucni sazbe vznika
sestavenim kuzelek do radku). Jak moc to ovlivni rozhozeni radku zavisi
na skutecne TeXovske "hloubce" radku, ktery je nad tim a na volbe
baselineskip (pri deseti se voli napr. 12).

Zde byl problem, v nemz jsme se s Karlem pri nasich upravach CSTeXu
neshodli. Karel trval na tom, ze TeX musi ty radky odstrcit, protoze se
to od nej ocekava, zatimco ja jsem chtel mit vsechny pismena v
CS-fontech s maximalni vyskou zavorky, tj. u akcentovanych pismen by
kresba akcentu precnivala asi o jeden a pul bodu pres definovanou vysku
znaku. Tim by se problem rozhazovani rejstriku odstranil. Protoze ale
fonty jsou v kompetenci Karla, nechal jsem to nakonec podle Karla.

Vase reseni se zapornym \lineskipem (nevim, proc ve vasem pripade
pisete \normallineskip -- zrejme se jedna o nejakou LaTeXovskou
nadstavbu TeX-primitivu \lineskip) je jedine spravne reseni.
Volejte do celeho Ceska a Slovenska, ze jedine tak je potreba pracovat
s CS-fonty, aby nedoslo k rozhozeni radkoveho rejstriku. Uvedl jsem o
tom podrobnou zminku do dokumentace.

Toto reseni ma nekolik zaludnosti:

1. Pri startu sazby tabulky se (aspon v plainu) tyto hodnoty resetuji.
   Je to proto, ze tabulky jsou vetsinou "podeprene" strutama, ktere se
   musi opirat presne o sebe a ne se prekryvat napr o -3pt. Takze
   tabulka s akcentovanym velkym pismenem s pozadavkem zachovani
   rejstriku je ukol pro TeXovskeho carodeje.

2. Ani Knuth nemyslel na bezne pouzivani zaporneho lineskipu. Jeho
   makra \b a \d (carka a tecka pod pismenem) se pri zapornem lineskipu
   nechovaji spravne.

Verim, ze po tomto dopise ubyde rozhazenych radkovych rejstriku jako
jednoho z typografickych nesvaru. Takze vase posnamka byla velice
uzitecna. Dekuji za ni.

> Neprijemne na csTexu je tiez, ze ked sa Tex nainicializuje na delenie
> napr. anglicke a slovenske a v subore sa objavi \chyph, prekladac na
> rozdiel od emTexu ho ignoruje, nehlasi neznamy prikaz a deli nespravne.
> Bolo by vyborne, keby sa tento jav dal v dalsej verzii odstranit.
>
Toho jsme si neuvedomili a do pristi verze o tom budeme premyslet.
Do te doby muzete ze souboru hyphen.lan odstranit definici \chyph
a znovuvygenerovat format (bez ceskeho deleni). Pak by vam to melo
spravne kricet.

> S pozdravom
>
> Anton Surda
>
S pozdravem

Petr Olsak



More information about the csTeX mailing list