Author: vhennebert
Date: Wed Jan 28 15:33:02 2009
New Revision: 738514
URL: http://svn.apache.org/viewvc?rev=738514&view=rev
Log:
Bugzilla #46315: extension to disable column balancing before blocks spanning
the whole page, in multiple-column documents.
Patch submitted by Georg Datterl, applied with some modifications (mainly
Checkstyle issues)
Added:
xmlgraphics/fop/trunk/test/layoutengine/standard-testcases/fox_disable-column-balancing.xml
(with props)
Modified:
xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/Constants.java
xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/FOPropertyMapping.java
xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/extensions/ExtensionElementMapping.java
xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/flow/Block.java
xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/flow/BlockContainer.java
xmlgraphics/fop/trunk/src/java/org/apache/fop/layoutmgr/FlowLayoutManager.java
xmlgraphics/fop/trunk/src/java/org/apache/fop/layoutmgr/LayoutContext.java
xmlgraphics/fop/trunk/src/java/org/apache/fop/layoutmgr/PageBreaker.java
xmlgraphics/fop/trunk/status.xml
Modified: xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/Constants.java
URL:
http://svn.apache.org/viewvc/xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/Constants.java?rev=738514&r1=738513&r2=738514&view=diff
==============================================================================
--- xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/Constants.java (original)
+++ xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/Constants.java Wed Jan 28
15:33:02 2009
@@ -766,8 +766,13 @@
int PR_X_WIDOW_CONTENT_LIMIT = 271;
/** Property constant - FOP proprietary: limit for orphan content in lists
and tables */
int PR_X_ORPHAN_CONTENT_LIMIT = 272;
+ /**
+ * Property constant - FOP proprietary: disable balancing of columns in
+ * multi-column layouts.
+ */
+ int PR_X_DISABLE_COLUMN_BALANCING = 273;
/** Number of property constants defined */
- int PROPERTY_COUNT = 272;
+ int PROPERTY_COUNT = 273;
// compound property constants
Modified:
xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/FOPropertyMapping.java
URL:
http://svn.apache.org/viewvc/xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/FOPropertyMapping.java?rev=738514&r1=738513&r2=738514&view=diff
==============================================================================
--- xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/FOPropertyMapping.java
(original)
+++ xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/FOPropertyMapping.java Wed
Jan 28 15:33:02 2009
@@ -1895,6 +1895,13 @@
m.addEnum("all", getEnumProperty(EN_ALL, "ALL"));
m.setDefault("none");
addPropertyMaker("span", m);
+
+ // fox:disable-column-balancing
+ m = new EnumProperty.Maker(PR_X_DISABLE_COLUMN_BALANCING);
+ m.useGeneric(genericBoolean);
+ m.setInherited(true);
+ m.setDefault("false");
+ addPropertyMaker("fox:disable-column-balancing", m);
}
private void createLeaderAndRuleProperties() {
Modified:
xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/extensions/ExtensionElementMapping.java
URL:
http://svn.apache.org/viewvc/xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/extensions/ExtensionElementMapping.java?rev=738514&r1=738513&r2=738514&view=diff
==============================================================================
---
xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/extensions/ExtensionElementMapping.java
(original)
+++
xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/extensions/ExtensionElementMapping.java
Wed Jan 28 15:33:02 2009
@@ -45,6 +45,7 @@
propertyAttributes.add("widow-content-limit");
propertyAttributes.add("orphan-content-limit");
propertyAttributes.add("internal-destination");
+ propertyAttributes.add("disable-column-balancing");
}
/**
Modified: xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/flow/Block.java
URL:
http://svn.apache.org/viewvc/xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/flow/Block.java?rev=738514&r1=738513&r2=738514&view=diff
==============================================================================
--- xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/flow/Block.java (original)
+++ xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/flow/Block.java Wed Jan 28
15:33:02 2009
@@ -21,8 +21,6 @@
import java.awt.Color;
-import org.xml.sax.Locator;
-
import org.apache.fop.apps.FOPException;
import org.apache.fop.datatypes.Length;
import org.apache.fop.datatypes.Numeric;
@@ -40,6 +38,7 @@
import org.apache.fop.fo.properties.CommonRelativePosition;
import org.apache.fop.fo.properties.KeepProperty;
import org.apache.fop.fo.properties.SpaceProperty;
+import org.xml.sax.Locator;
/**
* Class modelling the <a href="http://www.w3.org/TR/xsl/#fo_block">
@@ -80,6 +79,7 @@
private int whiteSpaceCollapse;
private Numeric widows;
private int wrapOption;
+ private int disableColumnBalancing;
// Unused but valid items, commented out for performance:
// private CommonAccessibility commonAccessibility;
// private CommonAural commonAural;
@@ -130,6 +130,7 @@
whiteSpaceCollapse = pList.get(PR_WHITE_SPACE_COLLAPSE).getEnum();
widows = pList.get(PR_WIDOWS).getNumeric();
wrapOption = pList.get(PR_WRAP_OPTION).getEnum();
+ disableColumnBalancing =
pList.get(PR_X_DISABLE_COLUMN_BALANCING).getEnum();
}
/** {...@inheritdoc} */
@@ -318,6 +319,15 @@
return this.lineHeightShiftAdjustment;
}
+ /**
+ * @return the "fox:disable-column-balancing" property, one of
+ * {...@link Constants#EN_TRUE}, {...@link Constants#EN_FALSE}
+ */
+ public int getDisableColumnBalancing() {
+ return disableColumnBalancing;
+ }
+
+
/** {...@inheritdoc} */
public CharIterator charIterator() {
return NullCharIterator.getInstance();
Modified:
xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/flow/BlockContainer.java
URL:
http://svn.apache.org/viewvc/xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/flow/BlockContainer.java?rev=738514&r1=738513&r2=738514&view=diff
==============================================================================
--- xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/flow/BlockContainer.java
(original)
+++ xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/flow/BlockContainer.java
Wed Jan 28 15:33:02 2009
@@ -19,10 +19,7 @@
package org.apache.fop.fo.flow;
-import org.xml.sax.Locator;
-
import org.apache.fop.apps.FOPException;
-import org.apache.fop.datatypes.Length;
import org.apache.fop.datatypes.Numeric;
import org.apache.fop.fo.FONode;
import org.apache.fop.fo.FObj;
@@ -34,6 +31,7 @@
import org.apache.fop.fo.properties.CommonMarginBlock;
import org.apache.fop.fo.properties.KeepProperty;
import org.apache.fop.fo.properties.LengthRangeProperty;
+import org.xml.sax.Locator;
/**
* Class modelling the <a href="http://www.w3.org/TR/xsl/#fo_block-container">
@@ -56,6 +54,7 @@
private int overflow;
private Numeric referenceOrientation;
private int span;
+ private int disableColumnBalancing;
private int writingMode;
// Unused but valid items, commented out for performance:
// private int intrusionDisplace;
@@ -94,6 +93,7 @@
referenceOrientation =
pList.get(PR_REFERENCE_ORIENTATION).getNumeric();
span = pList.get(PR_SPAN).getEnum();
writingMode = pList.get(PR_WRITING_MODE).getEnum();
+ disableColumnBalancing =
pList.get(PR_X_DISABLE_COLUMN_BALANCING).getEnum();
}
/** {...@inheritdoc} */
@@ -217,6 +217,15 @@
return this.span;
}
+ /**
+ * @return the "fox:disable-column-balancing" property, one of
+ * {...@link Constants#EN_TRUE}, {...@link Constants#EN_FALSE}
+ */
+ public int getDisableColumnBalancing() {
+ return disableColumnBalancing;
+ }
+
+
/** @return the "writing-mode" property */
public int getWritingMode() {
return writingMode;
Modified:
xmlgraphics/fop/trunk/src/java/org/apache/fop/layoutmgr/FlowLayoutManager.java
URL:
http://svn.apache.org/viewvc/xmlgraphics/fop/trunk/src/java/org/apache/fop/layoutmgr/FlowLayoutManager.java?rev=738514&r1=738513&r2=738514&view=diff
==============================================================================
---
xmlgraphics/fop/trunk/src/java/org/apache/fop/layoutmgr/FlowLayoutManager.java
(original)
+++
xmlgraphics/fop/trunk/src/java/org/apache/fop/layoutmgr/FlowLayoutManager.java
Wed Jan 28 15:33:02 2009
@@ -25,7 +25,6 @@
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
-
import org.apache.fop.area.Area;
import org.apache.fop.area.BlockParent;
import org.apache.fop.fo.pagination.Flow;
@@ -82,14 +81,22 @@
}
int span = EN_NONE;
+ int disableColumnBalancing = EN_FALSE;
if (curLM instanceof BlockLayoutManager) {
span = ((BlockLayoutManager)curLM).getBlockFO().getSpan();
+ disableColumnBalancing = ((BlockLayoutManager)
curLM).getBlockFO()
+ .getDisableColumnBalancing();
} else if (curLM instanceof BlockContainerLayoutManager) {
span =
((BlockContainerLayoutManager)curLM).getBlockContainerFO().getSpan();
+ disableColumnBalancing = ((BlockContainerLayoutManager) curLM)
+ .getBlockContainerFO().getDisableColumnBalancing();
}
int currentSpan = context.getCurrentSpan();
if (currentSpan != span) {
+ if (span == EN_ALL) {
+ context.setDisableColumnBalancing(disableColumnBalancing);
+ }
log.debug("span change from " + currentSpan + " to " + span);
context.signalSpanChange(span);
SpaceResolver.resolveElementList(returnList);
Modified:
xmlgraphics/fop/trunk/src/java/org/apache/fop/layoutmgr/LayoutContext.java
URL:
http://svn.apache.org/viewvc/xmlgraphics/fop/trunk/src/java/org/apache/fop/layoutmgr/LayoutContext.java?rev=738514&r1=738513&r2=738514&view=diff
==============================================================================
--- xmlgraphics/fop/trunk/src/java/org/apache/fop/layoutmgr/LayoutContext.java
(original)
+++ xmlgraphics/fop/trunk/src/java/org/apache/fop/layoutmgr/LayoutContext.java
Wed Jan 28 15:33:02 2009
@@ -148,6 +148,8 @@
private int pendingKeepWithNext = BlockLevelLayoutManager.KEEP_AUTO;
private int pendingKeepWithPrevious = BlockLevelLayoutManager.KEEP_AUTO;
+ private int disableColumnBalancing;
+
/**
* Copy constructor for creating child layout contexts.
* @param parentLC the parent layout context to copy from
@@ -170,6 +172,7 @@
this.pendingKeepWithNext = parentLC.pendingKeepWithNext;
this.pendingKeepWithPrevious = parentLC.pendingKeepWithPrevious;
// Copy other fields as necessary.
+ this.disableColumnBalancing = parentLC.disableColumnBalancing;
}
/**
@@ -412,7 +415,7 @@
/**
* Sets (Copies) the stack limits in both directions from another layout
context.
- * @param context the layout context to taje the values from
+ * @param context the layout context to take the values from
*/
public void setStackLimitsFrom(LayoutContext context) {
setStackLimitBP(context.getStackLimitBP());
@@ -681,5 +684,23 @@
+ (breakAfter != Constants.EN_AUTO ? "break-after" : "") + "]";
}
+ /**
+ * Returns whether the column balancer should be disabled before a
spanning block
+ *
+ * @return one of {...@link Constants#EN_TRUE}, {...@link
Constants#EN_FALSE}
+ */
+ public int getDisableColumnBalancing() {
+ return disableColumnBalancing;
+ }
+
+ /**
+ * Sets whether the column balancer should be disabled before a spanning
block
+ *
+ * @param disableColumnBalancing the value of the
fox:disable-column-balancing property
+ * @see #getDisableColumnBalancing()
+ */
+ public void setDisableColumnBalancing(int disableColumnBalancing) {
+ this.disableColumnBalancing = disableColumnBalancing;
+ }
}
Modified:
xmlgraphics/fop/trunk/src/java/org/apache/fop/layoutmgr/PageBreaker.java
URL:
http://svn.apache.org/viewvc/xmlgraphics/fop/trunk/src/java/org/apache/fop/layoutmgr/PageBreaker.java?rev=738514&r1=738513&r2=738514&view=diff
==============================================================================
--- xmlgraphics/fop/trunk/src/java/org/apache/fop/layoutmgr/PageBreaker.java
(original)
+++ xmlgraphics/fop/trunk/src/java/org/apache/fop/layoutmgr/PageBreaker.java
Wed Jan 28 15:33:02 2009
@@ -108,7 +108,9 @@
if (childLC.getNextSpan() != Constants.NOT_SET) {
//Next block list will have a different span.
nextSequenceStartsOn = childLC.getNextSpan();
- needColumnBalancing = (childLC.getNextSpan() == Constants.EN_ALL);
+ needColumnBalancing = childLC.getNextSpan() == Constants.EN_ALL
+ && childLC.getDisableColumnBalancing() ==
Constants.EN_FALSE;
+
}
if (needColumnBalancing) {
AbstractBreaker.log.debug(
Modified: xmlgraphics/fop/trunk/status.xml
URL:
http://svn.apache.org/viewvc/xmlgraphics/fop/trunk/status.xml?rev=738514&r1=738513&r2=738514&view=diff
==============================================================================
--- xmlgraphics/fop/trunk/status.xml (original)
+++ xmlgraphics/fop/trunk/status.xml Wed Jan 28 15:33:02 2009
@@ -58,6 +58,10 @@
documents. Example: the fix of marks layering will be such a case when
it's done.
-->
<release version="FOP Trunk" date="TBD">
+ <action context="Layout" dev="VH" type="add" fixes-bug="46315"
due-to="Georg Datterl">
+ Added extension to disable column balancing before blocks spanning the
whole page, in
+ multiple-column documents.
+ </action>
<action context="Renderers" dev="JM" type="add">
AFP Output: Bilevel images in resource groups as generated as hard
page segments
(instead of image objects) for better interoperability with older IPDS
environments
Added:
xmlgraphics/fop/trunk/test/layoutengine/standard-testcases/fox_disable-column-balancing.xml
URL:
http://svn.apache.org/viewvc/xmlgraphics/fop/trunk/test/layoutengine/standard-testcases/fox_disable-column-balancing.xml?rev=738514&view=auto
==============================================================================
---
xmlgraphics/fop/trunk/test/layoutengine/standard-testcases/fox_disable-column-balancing.xml
(added)
+++
xmlgraphics/fop/trunk/test/layoutengine/standard-testcases/fox_disable-column-balancing.xml
Wed Jan 28 15:33:02 2009
@@ -0,0 +1,231 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+<!-- $Id$ -->
+<testcase>
+ <info>
+ <p>
+ This test checks fox:disable-column-balancing.
+ </p>
+ </info>
+ <fo>
+ <fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"
+ xmlns:fox="http://xmlgraphics.apache.org/fop/extensions"
+ font-size="10pt" line-height="12pt">
+ <fo:layout-master-set>
+ <fo:simple-page-master page-height="250pt" page-width="200pt"
master-name="page">
+ <fo:region-body margin-right="3pt" margin-left="3pt"
margin-bottom="14pt"
+ margin-top="8pt" column-count="2"/>
+ </fo:simple-page-master>
+ </fo:layout-master-set>
+ <!-- sequence 1: column balancing disabled -->
+ <fo:page-sequence master-reference="page" background-color="#AAAAAA">
+ <fo:flow flow-name="xsl-region-body" background-color="#80F010"
+ fox:disable-column-balancing="true">
+ <fo:block background-color="#10F010">AAA AAA AAA AAA AAA AAA
AAA AAA AAA AAA AAA
+ AAA</fo:block>
+ <fo:block background-color="#20E020">BBB BBB BBB BBB BBB BBB
BBB BBB BBB BBB BBB
+ BBB BBB</fo:block>
+ <fo:block background-color="#80D030">CCC CCC CCC CCC CCC CCC
CCC CCC CCC CCC CCC
+ CCC CCC</fo:block>
+ <fo:block background-color="#30C040">DDD DDD DDD DDD DDD DDD
DDD DDD DDD DDD DDD
+ DDD DDD</fo:block>
+ <fo:block background-color="#90B050">EEE EEE EEE EEE EEE EEE
EEE EEE EEE EEE EEE
+ EEE EEE EEE EEE</fo:block>
+ <fo:block background-color="#40A060">FFF FFF FFF FFF FFF FFF
FFF FFF FFF FFF FFF
+ FFF FFF FFF FFF</fo:block>
+ <fo:block background-color="#A09070">GGG GGG GGG GGG GGG GGG
GGG GGG GGG GGG GGG
+ GGG</fo:block>
+ <fo:block background-color="#508080">HHH HHH HHH HHH HHH HHH
HHH HHH HHH HHH HHH
+ HHH HHH</fo:block>
+ <fo:block background-color="#B07090">III III III III III III
III III III III III
+ III III III III III III III III III III III</fo:block>
+ <fo:block background-color="#6060A0">JJJ JJJ JJJ JJJ JJJ JJJ
JJJ JJJ JJJ JJJ JJJ
+ JJJ JJJ JJJ JJJ JJJ</fo:block>
+ <fo:block span="all" id="span1"
background-color="#C050B0">KKK KKK KKK KKK KKK KKK
+ KKK KKK KKK KKK KKK KKK KKK KKK KKK KKK KKK KKK KKK KKK
KKK KKK KKK
+ KKK</fo:block>
+ <fo:block background-color="#7040C0">LLL LLL LLL LLL LLL LLL
LLL LLL LLL LLL LLL
+ LLL LLL LLL</fo:block>
+ <fo:block background-color="#D0F010">MMM MMM MMM MMM MMM MMM
MMM MMM MMM
+ MMM</fo:block>
+ <fo:block background-color="#8030D0">NNN NNN NNN NNN NNN NNN
NNN NNN NNN NNN NNN
+ NNN NNN</fo:block>
+ <fo:block background-color="#E020E0">OOO OOO OOO OOO OOO OOO
OOO OOO OOO OOO
+ OOO</fo:block>
+ <fo:block background-color="#9010F0">PPP PPP PPP PPP PPP PPP
PPP PPP PPP PPP
+ PPP</fo:block>
+ <fo:block background-color="#F0F010">QQQ QQQ QQQ QQQ QQQ QQQ
QQQ QQQ
+ QQQ</fo:block>
+ <fo:block background-color="#A0E020">RRR RRR RRR RRR RRR RRR
RRR RRR RRR RRR RRR
+ RRR RRR</fo:block>
+ <fo:block background-color="#10D030">SSS SSS SSS SSS SSS SSS
SSS SSS SSS SSS SSS
+ SSS SSS</fo:block>
+ <fo:block background-color="#B0C040">TTT TTT TTT TTT TTT TTT
TTT TTT TTT TTT TTT
+ TTT TTT TTT TTT TTT TTT TTT TTT TTT TTT TTT TTT TTT
TTT</fo:block>
+ <fo:block span="all" id="span2"
background-color="#20B050">UUU UUU UUU UUU UUU UUU
+ UUU UUU UUU UUU UUU UUU UUU UUU UUU UUU UUU UUU UUU UUU
UUU UUU UUU UUU UUU UUU
+ UUU UUU UUU UUU</fo:block>
+ <fo:block background-color="#C0A060">VVV VVV VVV VVV VVV VVV
VVV VVV VVV VVV VVV
+ VVV</fo:block>
+ <fo:block background-color="#309070">WWW WWW WWW WWW WWW WWW
WWW WWW WWW
+ WWW</fo:block>
+ <fo:block background-color="#D08080">XXX XXX XXX XXX XXX XXX
XXX XXX XXX XXX XXX
+ XXX XXX XXX</fo:block>
+ <fo:block background-color="#407090">YYY YYY YYY YYY YYY YYY
YYY YYY YYY YYY YYY
+ YYY YYY</fo:block>
+ <fo:block background-color="#E060A0">ZZZ ZZZ ZZZ ZZZ ZZZ ZZZ
ZZZ ZZZ ZZZ ZZZ ZZZ
+ ZZZ ZZZ ZZZ ZZZ</fo:block>
+ </fo:flow>
+ </fo:page-sequence>
+ <!-- sequence 2: column balancing enabled -->
+ <fo:page-sequence master-reference="page" initial-page-number="1"
background-color="#AAAAAA">
+ <fo:flow flow-name="xsl-region-body" background-color="#80F010"
+ fox:disable-column-balancing="false">
+ <fo:block background-color="#10F010">AAA AAA AAA AAA AAA AAA
AAA AAA AAA
+ AAA</fo:block>
+ <fo:block background-color="#20E020">BBB BBB BBB BBB BBB BBB
BBB BBB BBB BBB
+ BBB</fo:block>
+ <fo:block background-color="#80D030">CCC CCC CCC CCC CCC CCC
CCC CCC CCC CCC
+ CCC</fo:block>
+ <fo:block background-color="#30C040">DDD DDD DDD DDD DDD DDD
DDD DDD DDD DDD
+ DDD</fo:block>
+ <fo:block background-color="#90B050">EEE EEE EEE EEE EEE EEE
EEE EEE EEE EEE EEE
+ EEE EEE</fo:block>
+ <fo:block background-color="#40A060">FFF FFF FFF FFF FFF FFF
FFF FFF FFF FFF FFF
+ FFF FFF</fo:block>
+ <fo:block background-color="#A09070">GGG GGG GGG GGG GGG GGG
GGG GGG GGG
+ GGG</fo:block>
+ <fo:block background-color="#508080">HHH HHH HHH HHH HHH HHH
HHH HHH HHH HHH HHH
+ HHH HHH</fo:block>
+ <fo:block background-color="#B07090">III III III III III III
III III III III III
+ III III III III III III III III III III III III III III
III III III</fo:block>
+ <fo:block background-color="#6060A0">JJJ JJJ JJJ JJJ JJJ JJJ
JJJ JJJ JJJ JJJ JJJ
+ JJJ JJJ JJJ JJJ JJJ</fo:block>
+ <fo:block span="all" id="span3"
background-color="#C050B0">KKK KKK KKK KKK KKK KKK
+ KKK KKK KKK KKK KKK KKK KKK KKK KKK KKK KKK KKK KKK KKK
KKK KKK KKK
+ KKK</fo:block>
+ <fo:block background-color="#7040C0">LLL LLL LLL LLL LLL LLL
LLL LLL LLL LLL LLL
+ LLL LLL LLL</fo:block>
+ <fo:block background-color="#D0F010">MMM MMM MMM MMM MMM MMM
MMM MMM MMM
+ MMM</fo:block>
+ <fo:block background-color="#8030D0">NNN NNN NNN NNN NNN NNN
NNN NNN NNN
+ NNN NNN NNN NNN</fo:block>
+ <fo:block background-color="#E020E0">OOO OOO OOO OOO OOO OOO
OOO OOO OOO
+ OOO OOO</fo:block>
+ <fo:block background-color="#9010F0">PPP PPP PPP PPP PPP PPP
PPP PPP PPP
+ PPP PPP PPP PPP PPP PPP</fo:block>
+ <fo:block background-color="#F0F010">QQQ QQQ QQQ QQQ QQQ QQQ
QQQ QQQ QQQ
+ QQQ QQQ</fo:block>
+ <fo:block background-color="#A0E020">RRR RRR RRR RRR RRR RRR
RRR RRR RRR RRR
+ RRR</fo:block>
+ <fo:block background-color="#10D030">SSS SSS SSS SSS SSS SSS
SSS SSS SSS SSS
+ SSS</fo:block>
+ <fo:block background-color="#B0C040">TTT TTT TTT TTT TTT TTT
TTT TTT TTT TTT TTT
+ TTT TTT TTT TTT TTT TTT TTT TTT TTT TTT TTT TTT TTT TTT
TTT TTT</fo:block>
+ <fo:block span="all" id="span4"
background-color="#20B050">UUU UUU UUU UUU UUU UUU
+ UUU UUU UUU UUU UUU UUU UUU UUU UUU UUU UUU UUU UUU UUU
UUU UUU UUU UUU UUU UUU
+ UUU UUU</fo:block>
+ <fo:block background-color="#C0A060">VVV VVV VVV VVV VVV VVV
VVV VVV VVV VVV VVV
+ VVV</fo:block>
+ <fo:block background-color="#309070">WWW WWW WWW WWW WWW WWW
WWW WWW WWW
+ WWW</fo:block>
+ <fo:block background-color="#D08080">XXX XXX XXX XXX XXX XXX
XXX XXX XXX
+ XXX XXX XXX XXX XXX</fo:block>
+ <fo:block background-color="#407090">YYY YYY YYY YYY YYY YYY
YYY YYY YYY
+ YYY YYY YYY YYY</fo:block>
+ <fo:block background-color="#E060A0">ZZZ ZZZ ZZZ ZZZ ZZZ ZZZ
ZZZ ZZZ ZZZ
+ ZZZ ZZZ ZZZ ZZZ ZZZ ZZZ</fo:block>
+ </fo:flow>
+ </fo:page-sequence>
+ <!-- sequence 3: mixed -->
+ <fo:page-sequence master-reference="page" initial-page-number="1"
background-color="#AAAAAA">
+ <fo:flow flow-name="xsl-region-body" background-color="#80F010">
+ <fo:block background-color="#10F010">AAA AAA AAA AAA AAA AAA
AAA AAA AAA
+ AAA</fo:block>
+ <fo:block background-color="#20E020">BBB BBB
+ BBB BBB BBB BBB BBB BBB BBB BBB BBB BBB BBB</fo:block>
+ <fo:block background-color="#80D030">CCC CCC CCC CCC CCC CCC
CCC CCC CCC CCC CCC
+ CCC CCC</fo:block>
+ <fo:block background-color="#30C040">DDD DDD DDD DDD DDD DDD
DDD DDD DDD DDD
+ DDD</fo:block>
+ <fo:block background-color="#90B050">EEE EEE EEE EEE EEE EEE
EEE EEE EEE
+ EEE EEE EEE EEE</fo:block>
+ <fo:block background-color="#40A060">FFF FFF FFF FFF FFF FFF
FFF FFF FFF
+ FFF FFF FFF FFF</fo:block>
+ <fo:block background-color="#A09070">GGG GGG GGG GGG GGG GGG
GGG GGG GGG
+ GGG</fo:block>
+ <fo:block background-color="#508080">HHH HHH HHH HHH HHH HHH
HHH HHH HHH
+ HHH HHH</fo:block>
+ <fo:block background-color="#B07090">III III III III III III
III III III
+ III III III III III III III III III III III</fo:block>
+ <fo:block background-color="#6060A0">JJJ JJJ JJJ JJJ JJJ JJJ
JJJ JJJ JJJ
+ JJJ JJJ JJJ JJJ JJJ JJJ JJJ</fo:block>
+ <fo:block span="all" id="span5"
fox:disable-column-balancing="true"
+ background-color="#C050B0">KKK KKK KKK KKK KKK KKK KKK KKK
KKK KKK KKK KKK KKK
+ KKK KKK KKK KKK KKK KKK KKK KKK KKK KKK KKK KKK</fo:block>
+ <fo:block background-color="#7040C0">LLL LLL LLL LLL LLL LLL
LLL LLL LLL LLL LLL
+ LLL LLL LLL</fo:block>
+ <fo:block background-color="#D0F010">MMM MMM MMM MMM MMM MMM
MMM MMM MMM
+ MMM</fo:block>
+ <fo:block background-color="#8030D0">NNN NNN NNN NNN NNN NNN
NNN NNN NNN
+ NNN NNN NNN NNN</fo:block>
+ <fo:block background-color="#E020E0">OOO OOO OOO OOO OOO OOO
OOO OOO OOO
+ OOO OOO</fo:block>
+ <fo:block background-color="#9010F0">PPP PPP PPP PPP PPP PPP
PPP PPP PPP
+ PPP PPP PPP PPP PPP PPP</fo:block>
+ <fo:block background-color="#F0F010">QQQ QQQ QQQ QQQ QQQ QQQ
QQQ QQQ QQQ
+ QQQ QQQ</fo:block>
+ <fo:block background-color="#A0E020">RRR RRR RRR RRR RRR RRR
RRR RRR RRR
+ RRR RRR RRR RRR</fo:block>
+ <fo:block background-color="#10D030">SSS SSS SSS SSS SSS SSS
SSS SSS SSS
+ SSS SSS SSS SSS</fo:block>
+ <fo:block background-color="#B0C040">TTT TTT TTT TTT TTT TTT
TTT TTT TTT TTT TTT
+ TTT TTT TTT TTT TTT TTT TTT TTT TTT TTT TTT TTT TTT TTT
TTT TTT TTT TTT TTT
+ TTT</fo:block>
+ <fo:block span="all" id="span6"
background-color="#20B050">UUU UUU UUU UUU UUU UUU
+ UUU UUU UUU UUU UUU UUU UUU UUU UUU UUU UUU UUU UUU UUU
UUU UUU UUU UUU UUU UUU
+ UUU UUU</fo:block>
+ <fo:block background-color="#C0A060">VVV VVV VVV VVV VVV VVV
VVV VVV VVV VVV VVV
+ VVV</fo:block>
+ <fo:block background-color="#309070">WWW WWW WWW WWW WWW WWW
WWW WWW WWW
+ WWW</fo:block>
+ <fo:block background-color="#D08080">XXX XXX XXX XXX XXX XXX
XXX XXX XXX
+ XXX XXX XXX XXX XXX</fo:block>
+ <fo:block background-color="#407090">YYY YYY YYY YYY YYY YYY
YYY YYY YYY
+ YYY YYY YYY YYY</fo:block>
+ <fo:block background-color="#E060A0">ZZZ ZZZ ZZZ ZZZ ZZZ ZZZ
ZZZ ZZZ ZZZ
+ ZZZ ZZZ ZZZ ZZZ ZZZ ZZZ</fo:block>
+ </fo:flow>
+ </fo:page-sequence>
+ </fo:root>
+ </fo>
+ <checks>
+ <eval expected="0"
xpath="//pageSequence[1]/pageViewport[2]//span[1]/flow[2]/@bpd"/>
+ <eval expected="12000"
xpath="//pageSequence[1]/pageViewport[3]//span[2]/@bpd"/>
+ <!-- TODO Replace with the following test once bugs affecting multiple
columns have been
+ corrected
+ <eval expected="0"
xpath="count(//pageSequence[1]/pageViewport[3]//blo...@prod-id='span2'])"/>
+ -->
+
+ <eval expected="24000"
xpath="//pageSequence[2]/pageViewport[2]//span[1]/flow[2]/@bpd"/>
+ <eval expected="84000"
xpath="//pageSequence[2]/pageViewport[3]//span[1]/flow[2]/@bpd"/>
+
+ <eval expected="0"
xpath="//pageSequence[3]/pageViewport[2]//span[1]/flow[2]/@bpd"/>
+ <eval expected="180000"
xpath="//pageSequence[3]/pageViewport[3]//span[1]/flow[2]/@bpd"/>
+ </checks>
+</testcase>
Propchange:
xmlgraphics/fop/trunk/test/layoutengine/standard-testcases/fox_disable-column-balancing.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange:
xmlgraphics/fop/trunk/test/layoutengine/standard-testcases/fox_disable-column-balancing.xml
------------------------------------------------------------------------------
svn:keywords = Revision Id
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]