# [texhax] The fundamental problem ...

Peter Davis pfd at pfdstudio.com
Sun Jun 26 22:09:15 CEST 2011

```On Sun, Jun 26, 2011 at 11:36 AM, Uwe Lueck <uwe.lueck at web.de> wrote:

> "Peter Davis" <pfd at pfdstudio.com>
> > On Sun, Jun 26, 2011 at 3:11 AM, Uwe Lueck <uwe.lueck at web.de[mailto:
> uwe.lueck at web.de]> wrote:
> >> "Peter Davis" <pfd at pfdstudio.com[mailto:pfd at pfdstudio.com]> wrote 26.06.2011
> 05[#]:29:19:
> >>> On Sat, Jun 25, 2011 at 8:45 PM,> Donald Arseneau <asnd at triumf.ca
> [mailto:asnd at triumf.ca][mailto:asnd at triumf.ca[mailto:asnd at triumf.ca]]>
> wrote:
> >>>> Peter Davis <pfd at pfdstudio.com[mailto:pfd at pfdstudio.com][mailto:
> pfd at pfdstudio.com[mailto:pfd at pfdstudio.com]]> writes:
> >>>>> The flowfram package comes pretty close to what I need, but it still
> has two
> >>>>> limitations that would be difficult to work around:
> >>>>> 1) if it overflows a frame in the middle of a paragraph, and the
> following
> >>>>> frame has a different width, the end of that paragraph will be set at
> the
> >>>>> width of the first frame, not the second.
> >>>> You'll have to keep travk of line-counts and usr \parshape.
> >>> Thanks, Donald, but I don't see how \parshape let's me know
> >>> how much of the text fit on a line (or set of lines).
> >>> I can work out that the height of a box divided by
> >>> the baselineskip tells me how many lines will fit, but how can I
> >>> determine what text has to overflow into the next box?
> >> Trying to solve the cryptical hint:
> >> 1. Assume all lines have same height -- grid typesetting,
>
> > I think I see roughly how this would work, but I'll have to learn some
> more
> > about TeX processing to understand it better.  In particular, I would
> need
> > to split paragraphs across multiple frames, potentially with different
> widths.
> > I understand how \parshape can do typesetting across different line
> widths,
> > but I don't understand how to put those lines on different parts of the
> page.
>
> I thought you are happy with the way flowfram.sty distributes the content
> (one flow) into frames. However, I only had some glances at
> ffuserguide.pdf.
> It seems to me that it allows frames of different widths for the same flow.
>
> Then, however, the package also should handle the different paragraph
> shapes,
> no need to guess here about \parshape. From the introductory words for
> "dynamic frames" I guess that rather typesetting is repeated
> when a paragraph spans frames, not clear to me exactly.
> Maybe as an alternative to my proposal, the package tries to get ready
> with as few line width changes as possible, starting with a normal
> shape without width changes, and adding more line specifications
> to the \parshape command when the number of lines in the previous
> specification is less than the paragraph actually needs.
>
> Otherwise, my approach would be to implement frames
> by a "dynamic" output routine that changes \textheight etc.
> after each run and stores the frames somewhere
> until a phyisical page is completed, generalizing LaTeX's
> two-column mode.
>
> Did you actually try flowfram.sty?
>
> Curious:
>
>
As I mentioned, flowfram does *almost* everything I need.  The drawbacks are
that it doesn't properly split a paragraph across frames of different
widths, and it only supports one main flow of text.

The paragraph/frame problem can be worked around by inserting a \framebreak
manually, but there's no automatic way to do it.  That's one of the problems
I'm trying to solve.

The single/multiple flow problem is even trickier.  I can use static and
dynamic frames to put other text on a page, but I can't, for example,
automatically flow from one static or dynamic frame to another.

Suppose, for example, I have a newspaper with 4 frames on the front page.
Call them A, B, C and D.  My first story should fill frames A and B, and
then jump to the next page, where there are other frames E, F, etc.  The
second story should fill frames C and D.  This is difficult or impossible to
pull off in flowfram as it is, as I understand the documents.

I thought of concatenating the stories together: Story 2 Story 1, with a
\framebreak in between.  Then if I specify the frames in the order C, D, A,
B, E, F, ..., I should usually get the desired results.  However, if Story 2
happens to overflow frames C and D, it would then flow into frame A, which
is supposed to be the start of Story 1.

I hope that 's a little clearer.  Please let me know if I'm still too vague
on something.

Thanks,
-pd

--
----
The Tech Curmudgeon
http://www.techcurmudgeon.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://tug.org/pipermail/texhax/attachments/20110626/19c27b05/attachment-0001.html>
```