Proposal: Regions with auto-extent

"Alexander I Rozhenko" <[email protected]>
Newsgroups gmane.org.w3c.xsl-editors
Message-ID <001501c5b5f0$a6226e60$1a02a8c0@SAT>
Hello Editiors,

This is another proposal that allows automatically adjust a body region if static-content regions overlap it. This issue is concerned with adjustment aka MS Word.

In MS Word, the extent of headers and footers is not specified. When a header/footer goes over the text area, the top/bottom margin of the text area is adjusted to avoid overlapping. Many users of RTF2FO want a similar behavior for FO renderers. I thing this behavior can be specified as follows:

1 Allow extent="auto" in description of static regions in the simple-page-master. This value means the extent of the region to be calculated when a static-content of the region is prepared. More precisely, the block-progression direction in such region should be parallel with the extent direction. When auto-extent is calculated, only the areas of the xsl-normal class are taken into account.

2 In region-body, additional properties are required. One property is neccessary to allow or disallow adjustment of region margins if auto-extending regions overlap it. Other properties should specify the minimal distance between auto-extending regions and the region-body. This is how I see it:

"region-adjust"
Value: none | auto
Initial: none
Inherited: no
Percentages: allows adjust "region-body" margins to avoid overlapping with auto-extending regions.
Media:  visual 

"region-distance-before"
Value:  <width> | inherit 
Initial:  0pt
Inherited:  no 
Percentages: Specifies a minimal distance between region-body and auto-extending region-before 
Media:  visual 

"region-distance-after"
....

"region-distance-start"
....

"region-distance-end"
....

"region-distance"
This is a shorthand for all four distances

How should they work?

If "region-adjust" has the "auto" value, the region-body margins can be adjusted. The decision to adjust a margin is made in the following case: if static content of a neighbor region is auto-extendable, has a positive extent, and the distance between it and the region-body area is less than it is specified in the corresponding "region-distance-..." property. Then the corresponding margin is adjusted to provide the required region-distance.

Sincerely,
Alexander I Rozhenko
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.