Article View: pl.comp.dtp.tex
Article #16984Re: book/memoir; wdowy sieroty; \paraskip i \lineskip problem.
From: Jarosław Sokołowski
Date: Sat, 07 May 2011 21:08
Date: Sat, 07 May 2011 21:08
71 lines
5059 bytes
5059 bytes
Pan Aleksander napisał: >>> Natomiast dwa ostatnie wymagałyby, aby kara za składanie stron >>> wpływała na karę za składanie akapitów, dając w efekcie >>> ciaśniejszy/luźniejszy skład tychże. >> >> Właśnie niekoniecznie tego wymagają. Jest wprawdzie tak, że TeX >> (na przykład przy składaniu akapitu) stara się zminimalizować karę, >> ale z drugiej strony, jeśli kara nie przekroczy ustalonego progu, >> to zawsze skład uznawany jest za dobry i przechodzi przez TeXową >> kontrolę jakości. Z tej zasady wynika, że może istnieć coś takiego >> jak \looseness. Jeśli zadeklarujemy \tolerance=10000, to napisanie >> przed dłuższym akapitem \looseness=7 przyniesie rzeczywiście wydłużenie >> go o 7 wierszy. > > Próbuję przezwyciężyć swoją tępotę umysłową i zrozumieć jak to > działa. Czyli dokąd nie ma problemów -- akapit na środku strony, > to akapity są składane w sposób jednoznaczny. Co się dzieje z > karą, kiedy dochodzimy np. do tytułu rozdziału na samym dole > strony? Rzecz w tym, że nie ma żadnego "dochodzenia do". Jest spojrzenie na całość, na ciąg stron -- tak jak na ciąg wyrazów przy składaniu akapitu. Wyobraźmy sobie, że mamy do złożenia rozdział, w którym siedem stron to łatwy do złamania tekst, a w połowie ósmej pojawia się tabela na trzy czwarte strony. TeX sobie z czymś takim nie radzi bez ludzkiej pomocy. Trzeba każdą z ośmiu stron trochę porozsuwać w pionie (a więc pogorszyć skład), a wtedy nadgonimy brakującą połówkę ósmej strony, a tabela wypadnie na stronie dziewiątej. W ten sposób TeX składa akapity -- jeśli w połowie akapitu jest długie niepodzielne słowo, to kombinuje w ten sposób, by słowo to znalazło się całe w którymś z wierszy, a nie wypadało na granicy łamania. >> Tu by więc *wystarczyło* aby TeX przed przystąpieniem do podziału na >> strony dokonał składu akapitów we wszystkich możliwych wariantach, >> od najkrótszego do najdłuższego. Wcale *nie musi* zmieniać systemu >> kar w akapitach, wystarczy założenie, że muszą mieścić się w przyjętej >> wcześniej normie. > > No dobrze, ale nawet mając wszelkie możliwe podziały musi w jakiś > sposób potem dokonać wyboru. Czyli w ten czy inny sposób funkcja > kary. Tylko, że teraz są naraz dwa kryteria do spełnienia: jak > najlepszy wygląd strony, przy możliwie najmniej zepsutym wyglądzie > akapitów. Jeszcze raz powrórzę: nie ma w TeXu mniej i bardziej zepsutych akapitów. Są akapity niezepsute, czyli takie, które maja kiepskość (badness) mniejszą od zadeklarowanej tolerancji (tolerance). I są takie, których *nie dało się złożyć* -- one mają 'overfull', czyli sterczące na marginesie litery. > Z mojego punktu widzenia jest to dodanie premii za nieco > ciaśniejszy albo nieco luźniejszy skład. Czyli ingerencja w skład > akapitów. Żeby było trudniej, to jest to albo ciaśniejszy albo > luźniejszy. Nie można rozważać obu wariantów naraz. Już samo całościowe spojrzenie (które opisałem w pierwszym akapicie) powinno rozwiązać wiele problemów z łamaniem na strony. Szczególnie w tekscie o dużej "elastyczności pionowej" (takie są np. teksty ze wzorami matematycznymi). Dopiero gdy to nic nie da, zmienić długość akapitów i podjąć następną próbę złamania na strony. Aż do skutku. Teoretycznie jest tu lepiej niż przy składzie akapitu, gdzie słowa mają niezmienną długość (a jak czasem nie da się złożyć, to trzeba zamiast "samochód" napisać "auto", albo odwrotnie). -- Jarek
Technical Details
Message-ID:
<slrnisbd5h.v2c.jaros@falcon.lasek.waw.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.rmf.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!.POSTED!not-for-mailReferences:
<83bbd898-1142-477e-a936-91a2abd55153@p19g2000yqh.googlegroups.com> <slrnis56ac.dd1.jaros@falcon.lasek.waw.pl> <35b293d4-9e54-4752-930a-2f0d54bf89f4@j31g2000yqe.googlegroups.com> <ipuljk$3ee$1@speranza.aioe.org> <slrnis666p.ind.jaros@falcon.lasek.waw.pl> <kjzhb98fc3s.fsf@ccfs1.fuw.edu.pl> <slrnis85o2.s5m.jaros@falcon.lasek.waw.pl> <slrnis8heb.fql.r-znk@amber.within.nat> <slrnis8lij.694.jaros@falcon.lasek.waw.pl> <slrnis8n7v.i1g.r-znk@amber.within.nat> <slrnis8q7l.cpo.jaros@falcon.lasek.waw.pl> <slrnisact4.402.r-znk@amber.within.nat> <slrnisakfu.qdp.jaros@falcon.lasek.waw.pl> <slrnisb97h.9a0.r-znk@amber.within.nat>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.rmf.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!.POSTED!not-for-mail From: Jarosław Sokołowski <jaros@lasek.waw.pl> Newsgroups: pl.comp.dtp.tex Subject: Re: book/memoir; wdowy sieroty; \paraskip i \lineskip problem. Date: Sat, 7 May 2011 21:08:01 +0000 (UTC) Organization: : : : Lines: 71 Message-ID: <slrnisbd5h.v2c.jaros@falcon.lasek.waw.pl> References: <83bbd898-1142-477e-a936-91a2abd55153@p19g2000yqh.googlegroups.com> <slrnis56ac.dd1.jaros@falcon.lasek.waw.pl> <35b293d4-9e54-4752-930a-2f0d54bf89f4@j31g2000yqe.googlegroups.com> <ipuljk$3ee$1@speranza.aioe.org> <slrnis666p.ind.jaros@falcon.lasek.waw.pl> <kjzhb98fc3s.fsf@ccfs1.fuw.edu.pl> <slrnis85o2.s5m.jaros@falcon.lasek.waw.pl> <slrnis8heb.fql.r-znk@amber.within.nat> <slrnis8lij.694.jaros@falcon.lasek.waw.pl> <slrnis8n7v.i1g.r-znk@amber.within.nat> <slrnis8q7l.cpo.jaros@falcon.lasek.waw.pl> <slrnisact4.402.r-znk@amber.within.nat> <slrnisakfu.qdp.jaros@falcon.lasek.waw.pl> <slrnisb97h.9a0.r-znk@amber.within.nat> NNTP-Posting-Host: 213-238-72-224.adsl.inetia.pl Mime-Version: 1.0 X-Trace: news.onet.pl 1304802481 27849 213.238.72.224 (7 May 2011 21:08:01 GMT) X-Complaints-To: niusy@onet.pl NNTP-Posting-Date: Sat, 7 May 2011 21:08:01 +0000 (UTC) User-Agent: slrn/0.9.8.1 (Linux) Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit