bckfnn 2004/10/19 13:15:13
Modified: src/java/org/apache/fop/layoutmgr BlockLayoutManager.java
Log:
Third phase of performance improvement.
- Remove use of TextInfo.
PR: 31699
Revision Changes Path
1.30 +11 -12
xml-fop/src/java/org/apache/fop/layoutmgr/BlockLayoutManager.java
Index: BlockLayoutManager.java
===================================================================
RCS file:
/home/cvs/xml-fop/src/java/org/apache/fop/layoutmgr/BlockLayoutManager.java,v
retrieving revision 1.29
retrieving revision 1.30
diff -u -r1.29 -r1.30
--- BlockLayoutManager.java 10 Oct 2004 20:22:56 -0000 1.29
+++ BlockLayoutManager.java 19 Oct 2004 20:15:13 -0000 1.30
@@ -23,8 +23,8 @@
import java.util.List;
import org.apache.fop.datatypes.PercentBase;
-import org.apache.fop.fo.TextInfo;
import org.apache.fop.fo.PropertyManager;
+import org.apache.fop.fonts.Font;
import org.apache.fop.area.Area;
import org.apache.fop.area.Block;
import org.apache.fop.area.BlockParent;
@@ -39,7 +39,8 @@
* LayoutManager for a block FO.
*/
public class BlockLayoutManager extends BlockStackingLayoutManager {
-
+ private org.apache.fop.fo.flow.Block fobj;
+
private Block curBlockArea;
protected ListIterator proxyLMiter;
@@ -71,17 +72,15 @@
protected List childBreaks = new java.util.ArrayList();
public BlockLayoutManager(org.apache.fop.fo.flow.Block inBlock) {
- super.setFObj(inBlock);
+ super(inBlock);
+ fobj = inBlock;
proxyLMiter = new ProxyLMiter();
- userAgent = inBlock.getUserAgent();
- setBlockTextInfo(inBlock.getPropertyManager().getTextLayoutProps(
- inBlock.getFOEventHandler().getFontInfo()));
- }
-
- private void setBlockTextInfo(TextInfo ti) {
- lead = ti.fs.getAscender();
- follow = -ti.fs.getDescender();
- lineHeight = ti.lineHeight;
+
+ Font fs =
fobj.getCommonFont().getFontState(fobj.getFOEventHandler().getFontInfo());
+
+ lead = fs.getAscender();
+ follow = -fs.getDescender();
+ lineHeight = fobj.getLineHeight().getOptimum().getLength().getValue();
}
/**
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]