Re: Another page-related question: page-position=last

2005-10-03 Thread Jeremias Maerki
Ah, so we need to define first, what we really want to expect. :-) Does
the spec say anything about the expected behaviour?

On 02.10.2005 00:57:07 J.Pietschmann wrote:
 Jeremias Maerki wrote:
  On 27.09.2005 16:38:23 Luca Furini wrote:
 [the usual layout oscillation/convergence problem]
  What is the expected output?
  
  In this case it has to generate a blank page IMO.
 
 The expected output is that there is some content (area with bpd0) on
 the last page, even if this sounds suboptimal.
 
 
 J.Pietschmann



Jeremias Maerki



Re: Another page-related question: page-position=last

2005-10-03 Thread Andreas L Delmelle

On Oct 3, 2005, at 16:11, Jeremias Maerki wrote:

On 02.10.2005 00:57:07 J.Pietschmann wrote:

Jeremias Maerki wrote:

On 27.09.2005 16:38:23 Luca Furini wrote:

[the usual layout oscillation/convergence problem]

What is the expected output?


In this case it has to generate a blank page IMO.


The expected output is that there is some content (area with bpd0) on
the last page, even if this sounds suboptimal.

Ah, so we need to define first, what we really want to expect. :-) Does
the spec say anything about the expected behaviour?


I believe this can be (more or less) inferred from the fact that there 
are actually three sub-conditions, namely: page-position, odd-or-even 
and blank-or-not-blank.


Given that:
a) all three sub-conditions have to be true for the condition on the 
fo:conditional-page-master to be true (= to make it eligible for 
selection)

b) the initial value for 'blank-or-not-blank' is 'any'

Then I'd conclude that both the described expected outputs --blank page 
or one filled with some content-- are allowed in case there is no 
explicit blank-or-not-blank sub-condition specified on the fo:c-p-m in 
question (or an explicit any, which comes down to the same thing).


If and only if you have a fo:c-p-m with both page-position=last and 
blank-or-not-blank=blank, the output of one blank last page is the 
only correct output. Same thing for Joerg's expectation, which is the 
only correct output in case you have page-position=last and 
blank-or-not-blank=not-blank.


Note: in both cases I'm assuming this to be the only fo:c-p-m with a 
condition page-position=last.


I'm not absolutely sure, so correct me if I'm wrong...
For instance: I'm wondering whether the conditions *have* to be met, so 
that the layout-engine would, if necessary, have to perform all sorts 
of magic tricks to force the content to meet the criteria, or whether 
OTOH, the layout-engine only *has* to choose a particular fo:c-p-m if 
the criteria actually are met (?)


Anyone?


Cheers,

Andreas



Re: Another page-related question: page-position=last

2005-10-03 Thread Andreas L Delmelle

On Oct 3, 2005, at 21:22, J.Pietschmann wrote:


Umm, emm, blank means no area at all on the page body, not even one
with bpd=0. E.g.
 fo:flow ...
   fo:block/
   fo:block break-before=page/
 /fo:flow
would create two non-blank pages. Or so I think.


I see and fully agree, but IIRC, one of the ideas was to create a sort 
of dummy-area (internally, not corresponding to a FO in the document), 
so that the last page-master would always be used, even if the 
next-to-last page can hold all of the remaining content at a given 
point. AFAICT, this would *only* be acceptable if the page-master in 
question doesn't have an explicit non-blank constraint.


In any case, you're right about the above example generating two 
non-blank (yet empty) pages. So, a page-master with explicit blank 
constraint can never be used for either of them.


But now, I'm still wondering about the last question in my earlier 
post... :-/

If we have:

fo:conditional-page-master page-position=last
  blank-or-not-blank=not-blank

a) Does this page-master have to be used, period? (= If there are no 
areas left to fill up the last page, layout needs to backtrack in order 
to satisfy both conditions.)


b) Does it have to be used only in case both criteria are met at the 
same time? (= If there are no areas left to fill up an eventual last 
page, then this page-master is simply never eligible for selection.)


I'm inclined to believe b), but again, not absolutely --or: absolutely 
not-- certain about this...
Make it page-position=last and odd-or-even=odd: does that mean that 
we have to make sure that the page-sequence always contains an odd 
number of pages, or that that page-master is eligible for selection 
only if the last page turns out to have an odd number?



Cheers,

Andreas



Re: More style issues

2005-10-03 Thread J.Pietschmann

Jeremias Maerki wrote:

But I'll never define a variable called blockProgressionDimension!


I was after weirder stuff. Some random picks:
- availIPD (but availableBPD used elsewhere)
- avgWidth (but averageLineLength used elsewhere)
- bHyph (but hyphen/hyphenate/hyphenation used lesewhere)
- bInWS
- bSuppressLastPar
- backProps (but backgroundNNN used elsewhere)
- baseProp (but baseProperty used elsewhere)
- bfentries
- bpdim
- bufin
- cbout
- cfvals
- cmpnValue
- contentPosIter (but contentListIterator used elsewhere)
- curCharIter, but currParIterator
- curTxf
- currentGU
- currentPageG
- currentPageNum (but currentPageNumber used elsewhere)
- currentloc
- cycenum
- dbuf
- decoData
- defG
- descPList: description? descendant? descartes?
- dur
- effBorders (but effectiveAlignment used elsewhere)
- elem (but element used elsewhere)
- embFile (but embedFile used elsewhere)
- equivChar
- errMsg
- etmXHeight
- extGState
- fnSeparatorLength (but footnoteNNN used elsewhere)
- getAllocIPD (but getAllocationIPD used elsewhere)
- getBBox
- getCCL
- getColSpanIndex (but getColumnRowSpanningAttrs used elsewhere)
- getCurrentPV
- getKE
- getLM (but getLayoutManager used elsewhere)
- getLsb
- getP
- getRefIPD (but getReferenceAreaIPD used elsewhere)
- getSPM
- getStemV
- grn
- guSpan
- hasTextDeco
- horzSpan
- htPropNames
- iTWSadjust
- inl
- intbl
- ipdWidth (ultimate weirdness!)
- kpx1
- lastLoca
- leadingSS
- ledd2
- longHorMetricSize
- lvlInCntr
- mtxPtr
- myShad
- numLen
- offDocumentItems
- paddingPt
- pgNbField
- pixSzMM
- propEx
- relbase (but relativebase used elsewhere)
- resSpace: reserved? resolved? reset? randomly enhanced space?
- rightPadStr
- rslt
- setDW
- setDoOutput
- sPM
- spMaker
- trIter
- transFactory
- uniMap
- xRefFormats

HTH
J.Pietschmann