- From: <klease@club-internet.fr>
- Date: Sat, 23 Feb 2002 18:12:08 -0500 (EST)
- To: xsl-editors@w3.org
- Cc: fop-dev@xml.apache.org
Dear editors, I've got some questions about the properties used to specify the position of the region-body. Most of the discussion in 6.4.13, as well as the illustration, uses the "absolute" property names "margin-top", "margin-left", etc. to describe the positioning of the region-body viewport rectangle relative to the page-reference-area. However, the relative property names are also used, for example: "The inline-progression-dimension of the region-viewport-area is determined by the inline-progression-dimension of the content-rectangle of the page-reference-area minus the values of the start-indent and end-indent traits of the region-master. ... The block-progression-dimension of the region-viewport-area is determined by the block-progression-dimension of the content-rectangle for the page-reference-area minus the values of the space-before and space-after traits of the region-master." In theory, I find the use of the relative properties preferable, given that the indents on the region-body are intended to leave space for the side regions which are named using the writing-mode relative terms (based on the writing-mode specified on the simple-page-master.) However there a couple of slightly strange things involved with using space-before/after and start/end-indent. It would be clearer to use margin-start, etc, but I suppose you don't want to invent more properties which aren't generallly useful (quite understandable.) However the space properties are ranges rather than Lengths, whereas the margin is a Length value. The obvious solution is to specify that space-xxx.optimum will be used as the margin value. Aside from the fact that the use of indent to specify page-master region offsets doesn't feel very intuitive to me, the fact that indent is an inherited property would seem to lead to unwanted behavior. Consider the following case: Neither start-indent nor the corresponding margin is specified on region-body, but since start-indent is inherited, we look for a value on the parent FO which is the simple-page-master. There we may well find a value for the corresponding margin property. But this is clearly not what is wanted! I would suggest that when looking for a value for start-indent (or end-indent), the inheritance hierarchy be broken at the first ancestor FO which creates reference areas. In this case, this means that since the parent of the region-body is a the s-p-m which creates reference areas, the initial value (0) for start-indent is returned and not the value of start-indent (or margin-x) on the s-p-m. In fact, I believe this is a general principle concerning indent. For example, a table can have indent which positions the table. But that indent shouldn't generally be propagated to the table contents, since table and table-cell are reference areas. Thank you for considering these issues, Karen Lease FOP'er Senior Software Developer/Consultant SPX Valley Forge
Received on Monday, 25 February 2002 03:31:54 UTC