Package | Description |
---|---|
org.apache.fop.layoutmgr |
FOP's layout engine.
|
Modifier and Type | Field and Description |
---|---|
protected BreakingAlgorithm.KnuthNode[] |
BreakingAlgorithm.activeLines
The set of active nodes in ascending line order.
|
BreakingAlgorithm.KnuthNode |
BreakingAlgorithm.KnuthNode.next
next possible node in the same line
|
BreakingAlgorithm.KnuthNode |
BreakingAlgorithm.KnuthNode.previous
best node for the preceding breakpoint
|
Modifier and Type | Method and Description |
---|---|
protected BreakingAlgorithm.KnuthNode |
BreakingAlgorithm.compareNodes(BreakingAlgorithm.KnuthNode node1,
BreakingAlgorithm.KnuthNode node2)
Compare two KnuthNodes and return the node with the least demerit.
|
protected BreakingAlgorithm.KnuthNode |
BreakingAlgorithm.createNode(int position,
int line,
int fitness,
int totalWidth,
int totalStretch,
int totalShrink)
Creates a new active node for a break from the best active node of the given
fitness class to the element at the given position.
|
protected BreakingAlgorithm.KnuthNode |
BreakingAlgorithm.createNode(int position,
int line,
int fitness,
int totalWidth,
int totalStretch,
int totalShrink,
double adjustRatio,
int availableShrink,
int availableStretch,
int difference,
double totalDemerits,
BreakingAlgorithm.KnuthNode previous)
Creates a new active node for a feasible breakpoint at the given position.
|
protected BreakingAlgorithm.KnuthNode |
BreakingAlgorithm.getLastTooShort()
Return the last node that yielded a too short line.
|
protected BreakingAlgorithm.KnuthNode |
BreakingAlgorithm.getNode(int line)
Returns the first active node for the given line.
|
BreakingAlgorithm.KnuthNode |
BreakingAlgorithm.BestRecords.getNode(int fitness) |
protected BreakingAlgorithm.KnuthNode |
BreakingAlgorithm.recoverFromOverflow()
Recover from an overflow condition.
|
protected BreakingAlgorithm.KnuthNode |
BreakingAlgorithm.recoverFromTooLong(BreakingAlgorithm.KnuthNode lastTooLong)
Recover from a
BreakingAlgorithm.KnuthNode leading to a line that is too long. |
Modifier and Type | Method and Description |
---|---|
protected void |
BreakingAlgorithm.activateNode(BreakingAlgorithm.KnuthNode node,
int difference,
double r,
double demerits,
int fitnessClass,
int availableShrink,
int availableStretch)
Activate the given node.
|
protected void |
BreakingAlgorithm.addNode(int line,
BreakingAlgorithm.KnuthNode node)
Add a node at the end of the given line's existing active nodes.
|
void |
BreakingAlgorithm.BestRecords.addRecord(double demerits,
BreakingAlgorithm.KnuthNode node,
double adjust,
int availableShrink,
int availableStretch,
int difference,
int fitness)
Registers the new best active node for the given fitness class.
|
protected void |
BreakingAlgorithm.calculateBreakPoints(BreakingAlgorithm.KnuthNode node,
KnuthSequence par,
int total)
Determines the set of optimal breakpoints corresponding to the given active node.
|
protected BreakingAlgorithm.KnuthNode |
BreakingAlgorithm.compareNodes(BreakingAlgorithm.KnuthNode node1,
BreakingAlgorithm.KnuthNode node2)
Compare two KnuthNodes and return the node with the least demerit.
|
protected double |
BreakingAlgorithm.computeAdjustmentRatio(BreakingAlgorithm.KnuthNode activeNode,
int difference)
Return the adjustment ratio needed to make up for the difference.
|
protected double |
BalancingColumnBreakingAlgorithm.computeDemerits(BreakingAlgorithm.KnuthNode activeNode,
KnuthElement element,
int fitnessClass,
double r)
Computes the demerits of the current breaking (that is, up to the given element),
if the next-to-last chosen breakpoint is the given active node.
|
protected double |
BreakingAlgorithm.computeDemerits(BreakingAlgorithm.KnuthNode activeNode,
KnuthElement element,
int fitnessClass,
double r)
Computes the demerits of the current breaking (that is, up to the given element),
if the next-to-last chosen breakpoint is the given active node.
|
protected int |
BreakingAlgorithm.computeDifference(BreakingAlgorithm.KnuthNode activeNode,
KnuthElement element,
int elementIndex)
Return the difference between the natural width of a line that would be made
between the given active node and the given element, and the available width of the
real line.
|
protected BreakingAlgorithm.KnuthNode |
BreakingAlgorithm.createNode(int position,
int line,
int fitness,
int totalWidth,
int totalStretch,
int totalShrink,
double adjustRatio,
int availableShrink,
int availableStretch,
int difference,
double totalDemerits,
BreakingAlgorithm.KnuthNode previous)
Creates a new active node for a feasible breakpoint at the given position.
|
protected void |
BreakingAlgorithm.deactivateNode(BreakingAlgorithm.KnuthNode node,
int line)
Deactivate the given node
|
protected void |
BreakingAlgorithm.forceNode(BreakingAlgorithm.KnuthNode node,
int line,
int elementIdx,
int difference,
double r,
double demerits,
int fitnessClass,
int availableShrink,
int availableStretch)
Force the given
BreakingAlgorithm.KnuthNode , and register it. |
protected BreakingAlgorithm.KnuthNode |
BreakingAlgorithm.recoverFromTooLong(BreakingAlgorithm.KnuthNode lastTooLong)
Recover from a
BreakingAlgorithm.KnuthNode leading to a line that is too long. |
protected void |
BreakingAlgorithm.removeNode(int line,
BreakingAlgorithm.KnuthNode node)
Remove the given active node registered for the given line.
|
protected int |
BreakingAlgorithm.restartFrom(BreakingAlgorithm.KnuthNode restartingNode,
int currentIndex)
Restart from the given node at the given index.
|
abstract void |
BreakingAlgorithm.updateData2(BreakingAlgorithm.KnuthNode bestActiveNode,
KnuthSequence sequence,
int total)
Empty method, hook for subclasses.
|
Constructor and Description |
---|
BreakingAlgorithm.KnuthNode(int position,
int line,
int fitness,
int totalWidth,
int totalStretch,
int totalShrink,
double adjustRatio,
int availableShrink,
int availableStretch,
int difference,
double totalDemerits,
BreakingAlgorithm.KnuthNode previous)
Construct node.
|
Copyright 1999-2012 The Apache Software Foundation. All Rights Reserved.