🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.dtp.tex
Article #16587

Re: Ostatni wiersz do prawej - jak?

#16587
From: Jarosław Sokołowski
Date: Fri, 11 Dec 2009 14:45
34 lines
2175 bytes
Pan robert ma kolejny problem:

> W przypadku niektorych akapitow musze osiagnac efekt, by ostatni wiersz
> akapitu dosuniety byl do prawej strony.
> W FAQ znalezlem rozwiazanie:
> \newcommand{\ostwierszprawo}{%
> 	\setlength{\leftskip}{0pt plus 1fil}%
> 	\setlength{\rightskip}{0pt plus -1fil}%
> 	\setlength{\parfillskip}{0pt plus 1fil}}%
>
> Ale pojawia sie problem, mianowicie mam akapity dwuwierszoe i jednowierszowe

[...]

> Pytanie: Jak napisac makro bardziej uniwersalne, ktore w przypadku
> testu jednowierszowego dosuwalo tekst do lewj strony, a w przypadku
> wielowierszowego, ostatni wiersz dosuniety byl do prawej?

Skonstruować makro w ten sposób, że jego parametr (czyli treść akapitu)
będzie najpierw wykorzystana do złożenia tekstu "na brudno" w osobnym
pudełku (\vbox}, a następnie zmierzy wysokość tego pudełka. Jeśli uzna,
że mieści się tam więcej niż jedna linijka, zastosuje powyższą sztuczkę,
a jeśli nie -- odpuści sobie.

Ja bym makro definiował tak \def\doprawiacz#1\par{........} -- wtedy nie
trzeba brać akapitu w klamry, wystarczy na początku wpisać wywołanie
makra. Wygodniej się pisze.

W brudnopisie składa się tak: \setbox0\vbox{#1}. Póżniej wystarczy
porównać \ht0 z \baselineskip (albo np. 1.8\baselineskip). Jeśli jest
mniejsze, to akapit jest jednowierszowy, jeśli nie -- wielowierszowy.

-- 
Jarek
Technical Details
Message-ID: <slrnhi4mnq.vb4.jaros@falcon.lasek.waw.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!not-for-mail
References: <79c9.00000019.4b224ea3@newsgate.onet.pl>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!not-for-mail
From: Jarosław Sokołowski <jaros@lasek.waw.pl>
Newsgroups: pl.comp.dtp.tex
Subject: Re: Ostatni wiersz do prawej - jak?
Date: Fri, 11 Dec 2009 14:45:14 +0000 (UTC)
Organization: : : :
Lines: 34
Message-ID: <slrnhi4mnq.vb4.jaros@falcon.lasek.waw.pl>
References: <79c9.00000019.4b224ea3@newsgate.onet.pl>
NNTP-Posting-Host: 213-238-69-153.adsl.inetia.pl
Mime-Version: 1.0
X-Trace: inews.gazeta.pl 1260542714 13510 213.238.69.153 (11 Dec 2009 14:45:14 GMT)
X-Complaints-To: usenet@agora.pl
NNTP-Posting-Date: Fri, 11 Dec 2009 14:45:14 +0000 (UTC)
X-User: zzxxccvv
User-Agent: slrn/0.9.8.1 (Linux)
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit