LATEX-L Archives

Mailing list for the LaTeX3 project

LATEX-L@LISTSERV.UNI-HEIDELBERG.DE

Options: Use Classic View

Use Proportional Font
Show HTML Part by Default
Condense Mail Headers

Topic: [<< First] [< Prev] [Next >] [Last >>]

Print Reply
Sender: Mailing list for the LaTeX3 project <[log in to unmask]>
Date: Sat, 4 Aug 2012 11:57:47 +0100
Reply-To: Mailing list for the LaTeX3 project <[log in to unmask]>
Message-ID: <[log in to unmask]>
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
In-Reply-To: <[log in to unmask]>
Content-Type: text/plain; charset=ISO-8859-9
From: Brent Longborough <[log in to unmask]>
Parts/Attachments: text/plain (61 lines)
xcoffins is an extremely valuable package to have in my TeXkit, but I
often find myself thinking "if only...". Here are a few ideas for
enhancements:

1. Positioning the 'master coffin'

\TypesetCoffin, quite correctly, sets the coffin as if it were a
'character' (pardon what is almost certainly a gross approximation),
within the current flow of the text.

But often there may be cases where the coffin is the only 'character' on
the page, and it would be much more convenient to place the coffin as if
joining it to a 'page coffin'. Something like:

    \PageSetCoffin [t,l] \MyCoffin [t,l](-1cm,1cm)

where the first [] specifies the 'page handle' for alignment. Of course,
this leads to another question: 'what do you mean by page?', so one
might also need things like '\TextblockSetCoffin' and '\StockSetCoffin',
or another mechanism altogether.

2. Bleeding

I can see a need to allow coffin content to bleed outside the coffin (in
some sense), but not a simple way to achieve this. Take, for example,
the reconstructed cover page of 'Elementare Typographie' -- I can
imagine that the original intent was for the two thick red rules to
bleed into the left-hand and bottom trim edges. But the designer would
prefer to concentrate on positioning the non-bleeding stuff on the
trimmed page, while the length of the rules to the left and below
'doesn't really matter'. It would be useful to have some way of saying
'this edge of this coffin stops here, but let all this stuff overflow
outside the coffin'. I'm sorry -- that's a rather vague specification,
but I hope you can see what I'm trying to achieve.

3. Debugging

Putting a set of coffins together can sometimes be a bit of a
brain-bending task. It would be useful to have a debug option which,
when turned on, would produce the following effect on \JoinCoffins:

 1. Locate the destination point (the intersection of the two
destination poles), then, if the intersection point is defined by two
different coffins:
 2. Draw a rule along the horizontal pole from the vertical centre of
its coffin to the intersection point
 3. Draw a rule along the vertical pole from the horizontal centre of
its coffin to the intersection point, and, finally:
 4. If there is a non-zero offset, draw a line from the intersection
point to the final offset destination

I can see two ways to implement the on/off switch: something like
\DebugJoinCoffinOn/Off, or a starred version of \JoinCoffin.

Please believe that I am very grateful for xcoffins, and I realise that
all this is extra, and probably complex work. But I see these things as
being useful, so please feel free to shoot me down, to bring me back to
the real world, or even to build on these ideas.

Brent Longborough

ATOM RSS1 RSS2