Re: [xsl] XSL:FO approach for facing-page translation

Subject: Re: [xsl] XSL:FO approach for facing-page translation
From: "Tony Graham" <tgraham@xxxxxxxxxx>
Date: Fri, 7 Feb 2014 20:57:29 -0000 (GMT)
On Fri, February 7, 2014 6:43 pm, Martin Holmes wrote:
...
> I need to do something similar in PDF, using XSL:FO. The ideal would be
> to have the original text on the verso page, with the equivalent
> translation on the facing recto. But I can't figure out a practical
> approach to this. For one thing, I don't see how I can render individual
> pages from one text and then the other text in alternating fashion, and

Flow maps from XSL 1.1: use different flows on recto and verso pages.

> for another, I don't see any way to keep the two texts in sync. I can
> disallow page-breaks within paragraphs, but I'd have to be
> extraordinarily lucky for the two texts to end up breaking at the same
> points every time; it would just take one slightly-shorter paragraph on
> one side to put them out of sync by a paragraph. Such a strategy would
> also be rather a paper-waster, because many pages would have a lot of
> blank space at the bottom.
>
> Has anyone every done anything like this, and if so, do you have any
> advice? I can imagine that it might be done in a horribly manual fashion
> by trial and error, working page-by-page, but I really don't want to get
> into that. I'm happy to pre-process the text multiple times before it
> goes to the XSL:FO stage., Perhaps there are ways to measure (for
> instance) how much space a paragraph will take, and then adjust
> page-margins or spacing by small increments to preserve alignment
> between the two texts, but I haven't seen examples of such an approach.

See my Balisage 2013 talk, 'Decision making in XSL-FO formatting' [1].

The Print and Page Layout Community Group @ W3C [3] has an extension
function for use with Saxon or Xalan and either FOP or Antenna House that
runs the XSL-FO formatter within the XSLT transform so you can make
decisions based on formatted sizes as you go.  That would give you the
flexibility to format each paragraph pair in turn to work out their sizes,
which could make things simpler or harder, depending on how you approach
it.

Regards,


Tony Graham                                         tgraham@xxxxxxxxxx
Consultant                                       http://www.mentea.net
Chair, Print and Page Layout Community Group @ W3C    XML Guild member
  --  --  --  --  --  --  --  --  --  --  --  --  --  --  --  --  --
Mentea       XML, XSL-FO and XSLT consulting, training and programming

[1]
http://www.balisage.net/Proceedings/vol10/html/Graham01/BalisageVol10-Graham01.html
[2] http://www.w3.org/community/ppl/wiki/FOPRunXSLTExt
[3] http://www.w3.org/community/ppl/

Current Thread