Received: from webgate.proteosys.de (mail.proteosys-ag.com [62.225.9.49]) by lucy.proteosys (8.11.0/8.9.3/SuSE Linux 8.9.3-0.1) with ESMTP id f04IuGp26495 for ; Thu, 4 Jan 2001 19:56:20 +0100 Received: by webgate.proteosys.de (8.11.0/8.11.0) with ESMTP id f04FTo721913 . for ; Thu, 4 Jan 2001 16:29:57 +0100 Received: from mail.Uni-Mainz.DE (mailserver1.zdv.Uni-Mainz.DE [134.93.8.30]) by mailgate1.zdv.Uni-Mainz.DE (8.11.0/8.10.2) with ESMTP id f04FTZM28384 for ; Thu, 4 Jan 2001 16:29:35 +0100 (MET) MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="----_=_NextPart_001_01C07680.064D6200" Received: from mailgate2.zdv.Uni-Mainz.DE (mailgate2.zdv.Uni-Mainz.DE [134.93.8.57]) by mail.Uni-Mainz.DE (8.9.3/8.9.3) with ESMTP id QAA05691 for ; Thu, 4 Jan 2001 16:29:35 +0100 (MET) X-MimeOLE: Produced By Microsoft Exchange V6.5 Received: from mail.listserv.gmd.de (mail.listserv.gmd.de [192.88.97.5]) by mailgate2.zdv.Uni-Mainz.DE (8.11.0/8.10.2) with ESMTP id f04FTX010651 for ; Thu, 4 Jan 2001 16:29:33 +0100 (MET) Received: from mail.listserv.gmd.de (192.88.97.5) by mail.listserv.gmd.de (LSMTP for OpenVMS v1.1a) with SMTP id <3.FB8FFAAE@mail.listserv.gmd.de>; Thu, 4 Jan 2001 16:29:32 +0100 Received: from RELAY.URZ.UNI-HEIDELBERG.DE by RELAY.URZ.UNI-HEIDELBERG.DE (LISTSERV-TCP/IP release 1.8b) with spool id 478336 for LATEX-L@RELAY.URZ.UNI-HEIDELBERG.DE; Thu, 4 Jan 2001 16:29:29 +0100 Received: from ix.urz.uni-heidelberg.de (mail.urz.uni-heidelberg.de [129.206.119.234]) by relay.urz.uni-heidelberg.de (8.8.8/8.8.8) with ESMTP id QAA19058 for ; Thu, 4 Jan 2001 16:29:28 +0100 (MET) Received: from relay.uni-heidelberg.de (relay.uni-heidelberg.de [129.206.100.212]) by ix.urz.uni-heidelberg.de (8.8.8/8.8.8) with ESMTP id QAA22022 for ; Thu, 4 Jan 2001 16:29:29 +0100 Received: from abel.math.umu.se (abel.math.umu.se [130.239.20.139]) by relay.uni-heidelberg.de (8.10.2+Sun/8.10.2) with ESMTP id f04FTRU12777 for ; Thu, 4 Jan 2001 16:29:27 +0100 (MET) Received: from [130.239.20.144] (mac144.math.umu.se [130.239.20.144]) by abel.math.umu.se (8.9.2/8.9.2) with ESMTP id QAA00487; Thu, 4 Jan 2001 16:28:07 +0100 (CET) In-Reply-To: References: Return-Path: X-Sender: lars@abel.math.umu.se x-mime-autoconverted: from quoted-printable to 8bit by relay.urz.uni-heidelberg.de id QAA19059 Content-class: urn:content-classes:message Subject: Re: templates for page layout Date: Thu, 4 Jan 2001 16:29:24 +0100 Message-ID: X-MS-Has-Attach: X-MS-TNEF-Correlator: From: =?iso-8859-1?Q?Lars_Hellstr=F6m?= Sender: "Mailing list for the LaTeX3 project" To: "Multiple recipients of list LATEX-L" Reply-To: "Mailing list for the LaTeX3 project" Status: R X-Status: X-Keywords: X-UID: 3637 This is a multi-part message in MIME format. ------_=_NextPart_001_01C07680.064D6200 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable At 08.55 +0100 2001-01-02, Achim Blumensath wrote: >Hello, > >On Sun, 31 Dec 2000, Lars Hellstr=F6m wrote: >> At 14.25 +0100 2000-12-20, Achim Blumensath wrote: >> >I've written some templates to specify the page layout. >> >> Looks nice. [NB: I haven't got the page with me right now, so I might >> remember some of the following incorrectly. Anyway:] I especially = like the >> golden ratio template, but shouldn't one determine the text height = from the >> width rather than the other way around? > >Well, I don't know what is more natural in practice, but since the = height >should be a multiple of \baselineskip while there are no restrictions = on >the width (except for an upper bound) I chose this direction. The reason you should determine the text width first is that the width = of a line is very important for how easy a text is to read: if the line is = too long then it is hard to find the beginning of the next line. For many of the common paper formats (e.g. A4) it is more often this than the \paperwidth that is the bound you need to consider. >> The main unresolved problem (which probably should be handled in = connection >> to the page layout) is however how the text height and main galley = height >> should be related (I have written about that before), but I you would = need >> support from the output routine to sort that one out. > >Sorry, I can't remember what you've written about this. See mail "Page layout parameters" (sent to the LaTeX-L list 31 Jan = 2000). >What is the >difference between text height and main galley height? The text height and width are the side lengths of the text rectangle, in which all the non-marginal text should appear. In traditional book = design, the size and position of this rectangle is one of the very first things = you determine. The main galley height, or \vsize, is by contrast a parameter for TeX's page builder: the wanted height of the main vertical list material that is will be sent to the output routine in \box255. Current LaTeX makes no difference between these two concepts, but I think = LaTeX2e* should. The main galley height is subject to various technical = restrictions (when you're not \sloppy and the page hardly has any stretchability then you want it to be a multiple of the \baselineskip _plus_ one \topskip), = but the right way to manage that is not to leave it as restrictions on the basic layout, instead it should be handled by some more technical set of templates which might for example round it as necessary. >In my templates >text height is the height of the text block without page head and foot = but >including footnotes and floats. That's the way the current output routine does it, yes, but it is not = the way it should be done. E.g. a headings pagestyle page head is visually = part of the text rectangle and therefore its height should be included in the \textheight parameter. Another thing which should be included in \textheight is the (expected) depth of the page box; I doubt anyone = would want to claim that the descenders on the last line of a page are outside the text rectangle, but that is how the current output routine puts = them. The page builder ignores the depth when it determines the page break. One interesting advantage of putting the page head and foot logically inside the text rectangle is that one can (to some extent) ensure the = main galley height satsifies the multiple-of-\baselineskip restriction by modifying the \headsep and \footsep. In most designs there is probably a range of acceptable values available. Lars Hellstr=F6m ------_=_NextPart_001_01C07680.064D6200 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Re: templates for page layout

At 08.55 +0100 2001-01-02, Achim Blumensath = wrote:
>Hello,
>
>On Sun, 31 Dec 2000, Lars Hellstr=F6m = wrote:
>> At 14.25 +0100 2000-12-20, Achim Blumensath = wrote:
>> >I've written some templates to specify = the page layout.
>>
>> Looks nice. [NB: I haven't got the page with = me right now, so I might
>> remember some of the following incorrectly. = Anyway:] I especially like the
>> golden ratio template, but shouldn't one = determine the text height from the
>> width rather than the other way = around?
>
>Well, I don't know what is more natural in = practice, but since the height
>should be a multiple of \baselineskip while there = are no restrictions on
>the width (except for an upper bound) I chose = this direction.

The reason you should determine the text width first = is that the width of a
line is very important for how easy a text is to = read: if the line is too
long then it is hard to find the beginning of the = next line. For many of
the common paper formats (e.g. A4) it is more often = this than the
\paperwidth that is the bound you need to = consider.

>> The main unresolved problem (which probably = should be handled in connection
>> to the page layout) is however how the text = height and main galley height
>> should be related (I have written about that = before), but I you would need
>> support from the output routine to sort that = one out.
>
>Sorry, I can't remember what you've written about = this.

See mail "Page layout parameters" (sent to = the LaTeX-L list 31 Jan 2000).

>What is the
>difference between text height and main galley = height?

The text height and width are the side lengths of the = text rectangle, in
which all the non-marginal text should appear. In = traditional book design,
the size and position of this rectangle is one of the = very first things you
determine. The main galley height, or \vsize, is by = contrast a parameter
for TeX's page builder: the wanted height of the main = vertical list
material that is will be sent to the output routine = in \box255. Current
LaTeX makes no difference between these two concepts, = but I think LaTeX2e*
should. The main galley height is subject to various = technical restrictions
(when you're not \sloppy and the page hardly has any = stretchability then
you want it to be a multiple of the \baselineskip = _plus_ one \topskip), but
the right way to manage that is not to leave it as = restrictions on the
basic layout, instead it should be handled by some = more technical set of
templates which might for example round it as = necessary.

>In my templates
>text height is the height of the text block = without page head and foot but
>including footnotes and floats.

That's the way the current output routine does it, = yes, but it is not the
way it should be done. E.g. a headings pagestyle page = head is visually part
of the text rectangle and therefore its height should = be included in the
\textheight parameter. Another thing which should be = included in
\textheight is the (expected) depth of the page box; = I doubt anyone would
want to claim that the descenders on the last line of = a page are outside
the text rectangle, but that is how the current = output routine puts them.
The page builder ignores the depth when it determines = the page break.

One interesting advantage of putting the page head and = foot logically
inside the text rectangle is that one can (to some = extent) ensure the main
galley height satsifies the multiple-of-\baselineskip = restriction by
modifying the \headsep and \footsep. In most designs = there is probably a
range of acceptable values available.

Lars Hellstr=F6m

------_=_NextPart_001_01C07680.064D6200--