The call stack when creating the region viewports:
[1] org.apache.fop.layoutmgr.PageLayoutManager.makeRegionViewport (PageLayoutManager.java:832) [2] org.apache.fop.layoutmgr.PageLayoutManager.createPageAreas (PageLayoutManager.java:805) [3] org.apache.fop.layoutmgr.PageLayoutManager.createPage (PageLayoutManager.java:748) [4] org.apache.fop.layoutmgr.PageLayoutManager.makeNewPage (PageLayoutManager.java:467) [5] org.apache.fop.layoutmgr.PageLayoutManager.activateLayout (PageLayoutManager.java:220)
At the end of createPageAreas the following properties of the page have been established:
The page reference rectangle:
pageRefRect = {
x: 56692
y: 56692
width: 481891
height: 728505
serialVersionUID: -4345857070255674764
}
The page reference area:
page = {
regionBefore: null
regionStart: null
regionBody: instance of org.apache.fop.area.RegionViewport(id=1279)
regionEnd: null
regionAfter: null
unresolved: null
}
page.regionBody = {
region: instance of org.apache.fop.area.BodyRegion(id=1280)
viewArea: instance of java.awt.Rectangle(id=1281)
clip: false
org.apache.fop.area.Area.areaClass: 0
org.apache.fop.area.Area.ipd: 0
org.apache.fop.area.Area.props: null
}
page.regionBody.region = {
beforeFloat: null
mainReference: null
footnote: null
columnGap: 18000
columnCount: 1
refIPD: 0
org.apache.fop.area.RegionReference.regionClass: 2
org.apache.fop.area.RegionReference.ctm: instance of org.apache.fop.area.CTM(id=1282)
org.apache.fop.area.RegionReference.blocks: instance of java.util.ArrayList(id=1283)
org.apache.fop.area.Area.areaClass: 0
org.apache.fop.area.Area.ipd: 0
org.apache.fop.area.Area.props: null
}
page.regionBody.viewArea = {
x: 56692
y: 56692
width: 481891
height: 728505
serialVersionUID: -4345857070255674764
}
The PageViewport is returned:
curPage = {
page: instance of org.apache.fop.area.Page(id=1261)
viewArea: instance of java.awt.Rectangle(id=1289)
clip: false
pageNumber: null
idReferences: null
unresolved: null
pendingResolved: null
markerFirstStart: null
markerLastStart: null
markerFirstAny: null
markerLastEnd: null
markerLastAny: null
}
When makeNewPage returns, the Page LayoutManager has a Page Viewport and a Body Region object. The layout dimensions have been calculated:
this = {
pageNumberGenerator: instance of org.apache.fop.fo.pagination.PageNumberGenerator(id=1003)
pageCount: 1
pageNumberString: "1"
isFirstPage: false
bFirstPage: false
curPage: instance of org.apache.fop.area.PageViewport(id=1288)
curBody: instance of org.apache.fop.area.BodyRegion(id=1280)
curSpan: null
curSpanColumns: 0
curFlow: null
flowBPD: 728505
flowIPD: 0
areaTree: instance of org.apache.fop.area.AreaTree(id=1005)
pageSequence: instance of org.apache.fop.fo.pagination.PageSequence(id=1006)
currentSimplePageMaster: instance of org.apache.fop.fo.pagination.SimplePageMaster(id=1007)
staticContentLMs: instance of java.util.HashMap(id=1008)
lmls: instance of org.apache.fop.layoutmgr.LayoutManagerLS(id=1009)
org.apache.fop.layoutmgr.AbstractLayoutManager.userAgent: instance of org.apache.fop.apps.FOUserAgent(id=1010)
org.apache.fop.layoutmgr.AbstractLayoutManager.parentLM: null
org.apache.fop.layoutmgr.AbstractLayoutManager.fobj: instance of org.apache.fop.fo.pagination.PageSequence(id=1006)
org.apache.fop.layoutmgr.AbstractLayoutManager.foID: null
org.apache.fop.layoutmgr.AbstractLayoutManager.markers: null
org.apache.fop.layoutmgr.AbstractLayoutManager.bFinished: false
org.apache.fop.layoutmgr.AbstractLayoutManager.curChildLM: null
org.apache.fop.layoutmgr.AbstractLayoutManager.childLMiter: instance of org.apache.fop.layoutmgr.LMiter(id=1011)
org.apache.fop.layoutmgr.AbstractLayoutManager.bInited: false
}
The method createBodyMainReferenceArea() adds a MainReferenceArea to the body region:
curBody = {
beforeFloat: null
mainReference: instance of org.apache.fop.area.MainReference(id=1293)
footnote: null
columnGap: 18000
columnCount: 1
refIPD: 0
org.apache.fop.area.RegionReference.regionClass: 2
org.apache.fop.area.RegionReference.ctm: instance of org.apache.fop.area.CTM(id=1282)
org.apache.fop.area.RegionReference.blocks: instance of java.util.ArrayList(id=1283)
org.apache.fop.area.Area.areaClass: 0
org.apache.fop.area.Area.ipd: 0
org.apache.fop.area.Area.props: null
}
curBody.mainReference = {
spanAreas: instance of java.util.ArrayList(id=1294)
columnGap: 0
width: 0
org.apache.fop.area.Area.areaClass: 0
org.apache.fop.area.Area.ipd: 0
org.apache.fop.area.Area.props: null
}
curBody.mainReference.spanAreas = "[]"
After createSpan(1):
curBody.mainReference.spanAreas = "[org.apache.fop.area.Span@1581e80]"
curBody.mainReference.spanAreas.get(0) = {
flowAreas: instance of java.util.ArrayList(id=1299)
height: 0
org.apache.fop.area.Area.areaClass: 0
org.apache.fop.area.Area.ipd: 481891
org.apache.fop.area.Area.props: null
}