You are viewing a plain text version of this content. The canonical link for it is here.
Posted to fop-dev@xmlgraphics.apache.org by Barry Whiting <ba...@londonmarketing.com> on 2009/02/16 18:57:56 UTC

Flow-Map

Hi

 

Please understand I'm not a main java developer but I have taken the
responsibility of fop in our workplace as I usually write the xsltfo.

 

I am trying to implement flow maps inside and have so far found no
problems with adding the xml to the tree but that's where I get stuck.  

 

Could anybody point me in the right direction on how to know get these
Regions added to the renderer with the correct content for the flows
please?

 

Kind regards

 

Barry


Re: Flow-Map

Posted by Vincent Hennebert <vh...@gmail.com>.
Hi Barry,

Welcome! And sorry for the delay.

There’s not much that I can add to Jeremias’ answer for the moment. So
far I’ve mainly concentrated on tables so I’m not familiar with the page
production part of the layout engine yet.

The learning curve will indeed be very steep. There’s nothing wrong with
that and I’ll be happy to help as much as I can, but you just have to be
aware of it and make sure you will have the necessary time and energy to
devote to this task.

You definitely want to read the article “Breaking Paragraphs into Lines”
from Donald E. Knuth, that you can find in his book “Digital
Typography”. FOP borrows a lot of concepts from that article. Then, the
wiki and the part of the source code under the org.apache.fop.layoutmgr
hierarchy.

I’m currently working on a new approach to line- and page-breaking that
will overcome FOP’s current limitations. You may want to have a look at
the prototype implementation that can be found here:
http://svn.apache.org/viewvc/xmlgraphics/fop/branches/Temp_Interleaved_Page_Line_Breaking/prototype/java/

It illustrates the new ideas and may be simpler to understand as
I doesn’t have to cope with all the small unrelated details of
a real-life implementation.

If you have questions don’t hesitate to ask.
Good luck,
Vincent


Barry Whiting wrote:
> Hi Jeremias
> 
> Thank you very much for getting back to me so quick.
> 
> Sorry if my terminology is incorrect but hopefully I will learn this
> quickly here.
> 
>> "adding the xml to the tree".
>> Does that mean you managed to get the FO tree objects?
> 
> Yeap that's exactly how far I have got.  I am know reading the
> documentation to get a full understanding of the layout managers I
> didn't realise how complicated this would be so know I do and realise
> the docs are very important to me right now.
> 
> Thanks for the encouragement.
> 
> Barry
> 
> -----Original Message-----
> From: Jeremias Maerki [mailto:dev@jeremias-maerki.ch] 
> Sent: 16 February 2009 22:42
> To: fop-dev@xmlgraphics.apache.org
> Subject: Re: Flow-Map
> 
> Hi Barry,
> 
> I'm not sure I understand what you mean by "adding the xml to the tree".
> Does that mean you managed to get the FO tree objects built from the
> corresponding FO elements? The stuff in ElementMapping, the necessary FO
> tree classes, the makers? How far did you really get?
> 
> Anyway, I remembered that someone already started to work towards flow
> maps a couple of years ago and a quick search revealed this:
> http://markmail.org/message/ownlgu55sni7fy5z
> It seems this was never properly resolved but maybe this could help with
> your task.
> 
> Anyway, building up the FO tree structure is probably the easy part in
> all this. When it gets to area production (i.e. the layout managers), it
> gets more complicated. You have not chosen an easy task (just to be
> honest). I haven't studied flow maps in detail, yet, so I'm not sure
> about all the details but I suspect this will have an impact on the page
> production level (i.e. PageSequenceLayoutManager). At the moment,
> there's just the region-body which drives page production with the
> static content from the side regions around it. From what I know of flow
> maps, you can have multiple flows on one page [1]. What that means to
> the whole page breaking process, I can't tell at the moment. One part of
> your task is certainly to learn how the layout engine works: starting
> with the Knuth approach (info to be found on the FOP Wiki), continuing
> with stuff like page-position, marker implications, multi-column layout
> and stuff like that.
> 
> Then, I hope Vincent will also speak up because this may need to be
> coordinated with him as he's working on improving page breaking. I don't
> know if he's already taken flow maps into the picture.
> 
> I don't want to discourage you, just be prepared for a steep learning
> curve. It's great to see new blood taking up the challenge. Getting the
> FO tree right is certainly a good first step. It may make sense to work
> on this incrementally, i.e. post a first patch to update the FO tree and
> then go on to work on the layout engine. I don't expect any significant
> changes in and after the area tree at least.
> 
> Good luck! I'll try to help where I can but lately, Vincent is certainly
> closer to all the layout stuff.
> 
> [1] http://www.w3.org/TR/xsl11/#d0e7202
> 
> On 16.02.2009 18:57:56 Barry Whiting wrote:
>> Hi
>>  
>> Please understand I'm not a main java developer but I have taken the
>> responsibility of fop in our workplace as I usually write the xsltfo.
>>  
>> I am trying to implement flow maps inside and have so far found no
>> problems with adding the xml to the tree but that's where I get stuck.
> 
>>  
>> Could anybody point me in the right direction on how to know get these
>> Regions added to the renderer with the correct content for the flows
>> please?
>>  
>> Kind regards
>>  
>> Barry
> 
> 
> 
> 
> Jeremias Maerki
> 
> 
> No virus found in this incoming message.
> Checked by AVG - www.avg.com 
> Version: 8.0.237 / Virus Database: 270.10.24/1954 - Release Date:
> 02/16/09 06:55:00

RE: Flow-Map

Posted by Barry Whiting <ba...@londonmarketing.com>.
Hi Jeremias

Thank you very much for getting back to me so quick.

Sorry if my terminology is incorrect but hopefully I will learn this
quickly here.

> "adding the xml to the tree".
> Does that mean you managed to get the FO tree objects?

Yeap that's exactly how far I have got.  I am know reading the
documentation to get a full understanding of the layout managers I
didn't realise how complicated this would be so know I do and realise
the docs are very important to me right now.

Thanks for the encouragement.

Barry

-----Original Message-----
From: Jeremias Maerki [mailto:dev@jeremias-maerki.ch] 
Sent: 16 February 2009 22:42
To: fop-dev@xmlgraphics.apache.org
Subject: Re: Flow-Map

Hi Barry,

I'm not sure I understand what you mean by "adding the xml to the tree".
Does that mean you managed to get the FO tree objects built from the
corresponding FO elements? The stuff in ElementMapping, the necessary FO
tree classes, the makers? How far did you really get?

Anyway, I remembered that someone already started to work towards flow
maps a couple of years ago and a quick search revealed this:
http://markmail.org/message/ownlgu55sni7fy5z
It seems this was never properly resolved but maybe this could help with
your task.

Anyway, building up the FO tree structure is probably the easy part in
all this. When it gets to area production (i.e. the layout managers), it
gets more complicated. You have not chosen an easy task (just to be
honest). I haven't studied flow maps in detail, yet, so I'm not sure
about all the details but I suspect this will have an impact on the page
production level (i.e. PageSequenceLayoutManager). At the moment,
there's just the region-body which drives page production with the
static content from the side regions around it. From what I know of flow
maps, you can have multiple flows on one page [1]. What that means to
the whole page breaking process, I can't tell at the moment. One part of
your task is certainly to learn how the layout engine works: starting
with the Knuth approach (info to be found on the FOP Wiki), continuing
with stuff like page-position, marker implications, multi-column layout
and stuff like that.

Then, I hope Vincent will also speak up because this may need to be
coordinated with him as he's working on improving page breaking. I don't
know if he's already taken flow maps into the picture.

I don't want to discourage you, just be prepared for a steep learning
curve. It's great to see new blood taking up the challenge. Getting the
FO tree right is certainly a good first step. It may make sense to work
on this incrementally, i.e. post a first patch to update the FO tree and
then go on to work on the layout engine. I don't expect any significant
changes in and after the area tree at least.

Good luck! I'll try to help where I can but lately, Vincent is certainly
closer to all the layout stuff.

[1] http://www.w3.org/TR/xsl11/#d0e7202

On 16.02.2009 18:57:56 Barry Whiting wrote:
> Hi
>  
> Please understand I'm not a main java developer but I have taken the
> responsibility of fop in our workplace as I usually write the xsltfo.
>  
> I am trying to implement flow maps inside and have so far found no
> problems with adding the xml to the tree but that's where I get stuck.

>  
> Could anybody point me in the right direction on how to know get these
> Regions added to the renderer with the correct content for the flows
> please?
>  
> Kind regards
>  
> Barry




Jeremias Maerki


No virus found in this incoming message.
Checked by AVG - www.avg.com 
Version: 8.0.237 / Virus Database: 270.10.24/1954 - Release Date:
02/16/09 06:55:00

Re: Flow-Map

Posted by Jeremias Maerki <de...@jeremias-maerki.ch>.
Hi Barry,

I'm not sure I understand what you mean by "adding the xml to the tree".
Does that mean you managed to get the FO tree objects built from the
corresponding FO elements? The stuff in ElementMapping, the necessary FO
tree classes, the makers? How far did you really get?

Anyway, I remembered that someone already started to work towards flow
maps a couple of years ago and a quick search revealed this:
http://markmail.org/message/ownlgu55sni7fy5z
It seems this was never properly resolved but maybe this could help with
your task.

Anyway, building up the FO tree structure is probably the easy part in
all this. When it gets to area production (i.e. the layout managers), it
gets more complicated. You have not chosen an easy task (just to be
honest). I haven't studied flow maps in detail, yet, so I'm not sure
about all the details but I suspect this will have an impact on the page
production level (i.e. PageSequenceLayoutManager). At the moment,
there's just the region-body which drives page production with the
static content from the side regions around it. From what I know of flow
maps, you can have multiple flows on one page [1]. What that means to
the whole page breaking process, I can't tell at the moment. One part of
your task is certainly to learn how the layout engine works: starting
with the Knuth approach (info to be found on the FOP Wiki), continuing
with stuff like page-position, marker implications, multi-column layout
and stuff like that.

Then, I hope Vincent will also speak up because this may need to be
coordinated with him as he's working on improving page breaking. I don't
know if he's already taken flow maps into the picture.

I don't want to discourage you, just be prepared for a steep learning
curve. It's great to see new blood taking up the challenge. Getting the
FO tree right is certainly a good first step. It may make sense to work
on this incrementally, i.e. post a first patch to update the FO tree and
then go on to work on the layout engine. I don't expect any significant
changes in and after the area tree at least.

Good luck! I'll try to help where I can but lately, Vincent is certainly
closer to all the layout stuff.

[1] http://www.w3.org/TR/xsl11/#d0e7202

On 16.02.2009 18:57:56 Barry Whiting wrote:
> Hi
>  
> Please understand I'm not a main java developer but I have taken the
> responsibility of fop in our workplace as I usually write the xsltfo.
>  
> I am trying to implement flow maps inside and have so far found no
> problems with adding the xml to the tree but that's where I get stuck.  
>  
> Could anybody point me in the right direction on how to know get these
> Regions added to the renderer with the correct content for the flows
> please?
>  
> Kind regards
>  
> Barry




Jeremias Maerki