You are viewing a plain text version of this content. The canonical link for it is here.
Posted to fop-commits@xmlgraphics.apache.org by sp...@apache.org on 2008/02/14 22:57:53 UTC
svn commit: r627882 [20/41] - in
/xmlgraphics/fop/branches/Temp_Interleaved_Page_Line_Breaking: ./
examples/embedding/ examples/embedding/java/embedding/
examples/embedding/java/embedding/intermediate/ examples/embedding/xml/xml/
examples/fo/ examples/...
Modified: xmlgraphics/fop/branches/Temp_Interleaved_Page_Line_Breaking/test/java/org/apache/fop/threading/FOProcessorImpl.java
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/Temp_Interleaved_Page_Line_Breaking/test/java/org/apache/fop/threading/FOProcessorImpl.java?rev=627882&r1=627881&r2=627882&view=diff
==============================================================================
--- xmlgraphics/fop/branches/Temp_Interleaved_Page_Line_Breaking/test/java/org/apache/fop/threading/FOProcessorImpl.java (original)
+++ xmlgraphics/fop/branches/Temp_Interleaved_Page_Line_Breaking/test/java/org/apache/fop/threading/FOProcessorImpl.java Thu Feb 14 13:55:44 2008
@@ -28,69 +28,53 @@
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerException;
import javax.xml.transform.TransformerFactory;
-import javax.xml.transform.stream.StreamSource;
import javax.xml.transform.sax.SAXResult;
+import javax.xml.transform.stream.StreamSource;
-import org.apache.avalon.framework.logger.AbstractLogEnabled;
+import org.apache.avalon.framework.activity.Initializable;
import org.apache.avalon.framework.configuration.Configurable;
import org.apache.avalon.framework.configuration.Configuration;
import org.apache.avalon.framework.configuration.ConfigurationException;
+import org.apache.avalon.framework.logger.AbstractLogEnabled;
+import org.apache.fop.apps.FOPException;
import org.apache.fop.apps.FOUserAgent;
import org.apache.fop.apps.Fop;
-import org.apache.fop.apps.FOPException;
import org.apache.fop.apps.FopFactory;
import org.apache.fop.apps.MimeConstants;
-import org.apache.avalon.framework.activity.Initializable;
+/**
+ * Default implementation of the FOProcessor interface using FOP.
+ */
public class FOProcessorImpl extends AbstractLogEnabled
implements FOProcessor, Configurable, Initializable {
private FopFactory fopFactory = FopFactory.newInstance();
private TransformerFactory factory = TransformerFactory.newInstance();
- private String baseDir;
- private String fontBaseDir;
private String userconfig;
- private boolean strokeSVGText;
+ private String mime;
+ private String fileExtension;
+ /** {@inheritDoc} */
public void configure(Configuration configuration) throws ConfigurationException {
- this.baseDir = configuration.getChild("basedir").getValue(null);
- this.fontBaseDir = configuration.getChild("fontbasedir").getValue(null);
this.userconfig = configuration.getChild("userconfig").getValue(null);
- this.strokeSVGText = configuration.getChild("strokesvgtext").getValueAsBoolean(true);
+ this.mime = configuration.getChild("mime").getValue(MimeConstants.MIME_PDF);
+ this.fileExtension = configuration.getChild("extension").getValue(".pdf");
}
-
+ /** {@inheritDoc} */
public void initialize() throws Exception {
- /*
- org.apache.fop.messaging.MessageHandler.setScreenLogger(getLogger());
- if (userconfig != null) {
- getLogger().info("Using user config: "+userconfig);
- InputStream in = org.apache.fop.tools.URLBuilder.buildURL(userconfig).openStream();
- try {
- new org.apache.fop.apps.Options(in);
- } finally {
- in.close();
- }
- }
- if (this.baseDir != null) {
- getLogger().info("Setting base dir: "+baseDir);
- org.apache.fop.configuration.Configuration.put("baseDir", this.baseDir);
- }
- if (this.fontBaseDir != null) {
- getLogger().info("Setting font base dir: "+fontBaseDir);
- org.apache.fop.configuration.Configuration.put("fontBaseDir", this.fontBaseDir);
+ if (this.userconfig != null) {
+ getLogger().debug("Setting user config: " + userconfig);
+ fopFactory.setUserConfig(this.userconfig);
}
- String value = (this.strokeSVGText?"true":"false");
- org.apache.fop.configuration.Configuration.put("strokeSVGText", value);
- */
}
-
+ /** {@inheritDoc} */
public void process(InputStream in, Templates templates, OutputStream out)
throws org.apache.fop.apps.FOPException, java.io.IOException {
FOUserAgent foUserAgent = fopFactory.newFOUserAgent();
- Fop fop = fopFactory.newFop(MimeConstants.MIME_PDF, foUserAgent, out);
+ Fop fop = fopFactory.newFop(this.mime, foUserAgent, out);
try {
Transformer transformer;
@@ -105,6 +89,11 @@
} catch (TransformerException e) {
throw new FOPException(e);
}
+ }
+
+ /** {@inheritDoc} */
+ public String getTargetFileExtension() {
+ return this.fileExtension;
}
}
Propchange: xmlgraphics/fop/branches/Temp_Interleaved_Page_Line_Breaking/test/java/org/apache/fop/threading/FOProcessorImpl.java
------------------------------------------------------------------------------
--- svn:keywords (original)
+++ svn:keywords Thu Feb 14 13:55:44 2008
@@ -1 +1 @@
-Author Date Id Revision
+Id
Modified: xmlgraphics/fop/branches/Temp_Interleaved_Page_Line_Breaking/test/java/org/apache/fop/threading/Main.java
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/Temp_Interleaved_Page_Line_Breaking/test/java/org/apache/fop/threading/Main.java?rev=627882&r1=627881&r2=627882&view=diff
==============================================================================
--- xmlgraphics/fop/branches/Temp_Interleaved_Page_Line_Breaking/test/java/org/apache/fop/threading/Main.java (original)
+++ xmlgraphics/fop/branches/Temp_Interleaved_Page_Line_Breaking/test/java/org/apache/fop/threading/Main.java Thu Feb 14 13:55:44 2008
@@ -19,7 +19,9 @@
package org.apache.fop.threading;
+import java.io.BufferedReader;
import java.io.File;
+import java.io.IOException;
import org.apache.avalon.framework.ExceptionUtil;
import org.apache.avalon.framework.configuration.Configuration;
@@ -27,14 +29,32 @@
import org.apache.avalon.framework.container.ContainerUtil;
import org.apache.avalon.framework.logger.ConsoleLogger;
+/**
+ * Starter class for the multi-threading testbed.
+ */
public class Main {
+ private static void prompt() throws IOException {
+ BufferedReader in = new BufferedReader(new java.io.InputStreamReader(System.in));
+ System.out.print("Press return to continue...");
+ in.readLine();
+ }
+
+ /**
+ * Main method.
+ * @param args the command-line arguments
+ */
public static void main(String[] args) {
try {
//Read configuration
File cfgFile = new File(args[0]);
DefaultConfigurationBuilder builder = new DefaultConfigurationBuilder();
Configuration cfg = builder.buildFromFile(cfgFile);
+
+ boolean doPrompt = cfg.getAttributeAsBoolean("prompt", false);
+ if (doPrompt) {
+ prompt();
+ }
//Setup testbed
FOPTestbed testbed = new FOPTestbed();
Propchange: xmlgraphics/fop/branches/Temp_Interleaved_Page_Line_Breaking/test/java/org/apache/fop/threading/Main.java
------------------------------------------------------------------------------
--- svn:keywords (original)
+++ svn:keywords Thu Feb 14 13:55:44 2008
@@ -1 +1 @@
-Author Date Id Revision
+Id
Modified: xmlgraphics/fop/branches/Temp_Interleaved_Page_Line_Breaking/test/java/org/apache/fop/threading/sample.cfg.xml
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/Temp_Interleaved_Page_Line_Breaking/test/java/org/apache/fop/threading/sample.cfg.xml?rev=627882&r1=627881&r2=627882&view=diff
==============================================================================
--- xmlgraphics/fop/branches/Temp_Interleaved_Page_Line_Breaking/test/java/org/apache/fop/threading/sample.cfg.xml (original)
+++ xmlgraphics/fop/branches/Temp_Interleaved_Page_Line_Breaking/test/java/org/apache/fop/threading/sample.cfg.xml Thu Feb 14 13:55:44 2008
@@ -1,12 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
-<config>
+<config prompt="false">
<threads>2</threads>
<output-dir>C:/Dev/FOP/temp/out</output-dir>
- <foprocessor>
- <!--basedir>C:/Dev/FOP/temp</basedir>
- <fontbasedir>C:/Dev/FOP/temp/fonts</fontbasedir>
+ <foprocessor class="org.apache.fop.threading.FOProcessorImpl">
+ <!--
<userconfig>C:/Dev/FOP/temp/userconfig.xml</userconfig>
- <strokesvgtext>true</strokesvgtext-->
+ -->
+ <mime>application/pdf</mime>
+ <extension>.pdf</extension>
</foprocessor>
<tasks repeat="2">
<task fo="C:/Dev/FOP/temp/helloworld.fo"/>
Propchange: xmlgraphics/fop/branches/Temp_Interleaved_Page_Line_Breaking/test/java/org/apache/fop/threading/sample.cfg.xml
------------------------------------------------------------------------------
--- svn:keywords (original)
+++ svn:keywords Thu Feb 14 13:55:44 2008
@@ -1 +1 @@
-Author Date Id Revision
+Revision Id
Propchange: xmlgraphics/fop/branches/Temp_Interleaved_Page_Line_Breaking/test/java/org/apache/fop/traits/BorderPropsTestCase.java
------------------------------------------------------------------------------
svn:keywords = Id
Propchange: xmlgraphics/fop/branches/Temp_Interleaved_Page_Line_Breaking/test/java/org/apache/fop/traits/TraitColorTestCase.java
------------------------------------------------------------------------------
svn:keywords = Id
Propchange: xmlgraphics/fop/branches/Temp_Interleaved_Page_Line_Breaking/test/java/org/apache/fop/util/DataURIResolverTestCase.java
------------------------------------------------------------------------------
svn:keywords = Id
Propchange: xmlgraphics/fop/branches/Temp_Interleaved_Page_Line_Breaking/test/java/org/apache/fop/util/DigestFilter.java
------------------------------------------------------------------------------
--- svn:keywords (original)
+++ svn:keywords Thu Feb 14 13:55:44 2008
@@ -1 +1 @@
-Author Date Id Revision
+Id
Propchange: xmlgraphics/fop/branches/Temp_Interleaved_Page_Line_Breaking/test/java/org/apache/fop/util/ElementListUtilsTestCase.java
------------------------------------------------------------------------------
svn:keywords = Id
Propchange: xmlgraphics/fop/branches/Temp_Interleaved_Page_Line_Breaking/test/java/org/apache/fop/util/UnitConvTestCase.java
------------------------------------------------------------------------------
svn:keywords = Id
Modified: xmlgraphics/fop/branches/Temp_Interleaved_Page_Line_Breaking/test/java/org/apache/fop/visual/BatchDiffer.java
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/Temp_Interleaved_Page_Line_Breaking/test/java/org/apache/fop/visual/BatchDiffer.java?rev=627882&r1=627881&r2=627882&view=diff
==============================================================================
--- xmlgraphics/fop/branches/Temp_Interleaved_Page_Line_Breaking/test/java/org/apache/fop/visual/BatchDiffer.java (original)
+++ xmlgraphics/fop/branches/Temp_Interleaved_Page_Line_Breaking/test/java/org/apache/fop/visual/BatchDiffer.java Thu Feb 14 13:55:44 2008
@@ -20,31 +20,29 @@
package org.apache.fop.visual;
import java.awt.image.BufferedImage;
-import java.awt.image.RenderedImage;
import java.io.File;
-import java.io.FileOutputStream;
import java.io.IOException;
-import java.io.OutputStream;
import java.util.Collection;
import java.util.Iterator;
import javax.xml.transform.TransformerConfigurationException;
import javax.xml.transform.stream.StreamSource;
+import org.xml.sax.SAXException;
+
import org.apache.avalon.framework.configuration.Configuration;
import org.apache.avalon.framework.configuration.ConfigurationException;
import org.apache.avalon.framework.configuration.DefaultConfigurationBuilder;
import org.apache.avalon.framework.container.ContainerUtil;
import org.apache.commons.io.FileUtils;
-import org.apache.commons.io.IOUtils;
import org.apache.commons.io.filefilter.IOFileFilter;
import org.apache.commons.io.filefilter.SuffixFileFilter;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
+
+import org.apache.xmlgraphics.image.writer.ImageWriterUtil;
+
import org.apache.fop.layoutengine.LayoutEngineTestSuite;
-import org.apache.xmlgraphics.image.writer.ImageWriter;
-import org.apache.xmlgraphics.image.writer.ImageWriterRegistry;
-import org.xml.sax.SAXException;
/**
* This class is used to visually diff bitmap images created through various sources.
@@ -110,22 +108,6 @@
}
/**
- * Saves a BufferedImage as a PNG file.
- * @param bitmap the bitmap to encode
- * @param outputFile the target file
- * @throws IOException in case of an I/O problem
- */
- public static void saveAsPNG(RenderedImage bitmap, File outputFile) throws IOException {
- OutputStream out = new FileOutputStream(outputFile);
- try {
- ImageWriter writer = ImageWriterRegistry.getInstance().getWriterFor("image/png");
- writer.writeImage(bitmap, out);
- } finally {
- IOUtils.closeQuietly(out);
- }
- }
-
- /**
* Runs the batch.
* @param cfgFile configuration file to use
* @throws ConfigurationException In case of a problem with the configuration
@@ -165,7 +147,7 @@
if (!srcDir.exists()) {
throw new RuntimeException("source-directory does not exist: " + srcDir);
}
- File targetDir = new File(cfg.getChild("target-directory").getValue());
+ final File targetDir = new File(cfg.getChild("target-directory").getValue());
targetDir.mkdirs();
if (!targetDir.exists()) {
throw new RuntimeException("target-directory is invalid: " + targetDir);
@@ -173,10 +155,9 @@
context.setTargetDir(targetDir);
boolean stopOnException = cfg.getChild("stop-on-exception").getValueAsBoolean(true);
- boolean createDiffs = cfg.getChild("create-diffs").getValueAsBoolean(true);
+ final boolean createDiffs = cfg.getChild("create-diffs").getValueAsBoolean(true);
//RUN!
- BufferedImage[] bitmaps = new BufferedImage[producers.length];
IOFileFilter filter = new SuffixFileFilter(new String[] {".xml", ".fo"});
//Same filtering as in layout engine tests
@@ -188,10 +169,11 @@
Collection files = FileUtils.listFiles(srcDir, filter, null);
Iterator i = files.iterator();
while (i.hasNext()) {
- File f = (File)i.next();
+ final File f = (File)i.next();
try {
log.info("---=== " + f + " ===---");
long[] times = new long[producers.length];
+ final BufferedImage[] bitmaps = new BufferedImage[producers.length];
for (int j = 0; j < producers.length; j++) {
times[j] = System.currentTimeMillis();
bitmaps[j] = producers[j].produce(f, context);
@@ -212,24 +194,18 @@
throw new RuntimeException("First producer didn't return a bitmap for "
+ f + ". Cannot continue.");
}
- BufferedImage combined = BitmapComparator.buildCompareImage(bitmaps);
- //Save combined bitmap as PNG file
- File outputFile = new File(targetDir, f.getName() + "._combined.png");
- saveAsPNG(combined, outputFile);
-
- if (createDiffs) {
- for (int k = 1; k < bitmaps.length; k++) {
- BufferedImage diff = BitmapComparator.buildDiffImage(
- bitmaps[0], bitmaps[k]);
- outputFile = new File(targetDir, f.getName() + "._diff" + k + ".png");
- saveAsPNG(diff, outputFile);
+ Runnable runnable = new Runnable() {
+ public void run() {
+ try {
+ saveBitmaps(targetDir, f, createDiffs, bitmaps);
+ } catch (IOException e) {
+ log.error("IO error while saving bitmaps: " + e.getMessage());
+ }
}
- }
- //Release memory as soon as possible. These images are huge!
- for (int k = 0; k < bitmaps.length; k++) {
- bitmaps[k] = null;
- }
+ };
+ //This speeds it up a little on multi-core CPUs (very cheap, I know)
+ new Thread(runnable).start();
} catch (RuntimeException e) {
log.error("Catching RE on file " + f + ": " + e.getMessage());
if (stopOnException) {
@@ -251,6 +227,24 @@
}
}
+ private void saveBitmaps(File targetDir, File srcFile, boolean createDiffs,
+ BufferedImage[] bitmaps) throws IOException {
+ BufferedImage combined = BitmapComparator.buildCompareImage(bitmaps);
+
+ //Save combined bitmap as PNG file
+ File outputFile = new File(targetDir, srcFile.getName() + "._combined.png");
+ ImageWriterUtil.saveAsPNG(combined, outputFile);
+
+ if (createDiffs) {
+ for (int k = 1; k < bitmaps.length; k++) {
+ BufferedImage diff = BitmapComparator.buildDiffImage(
+ bitmaps[0], bitmaps[k]);
+ outputFile = new File(targetDir, srcFile.getName() + "._diff" + k + ".png");
+ ImageWriterUtil.saveAsPNG(diff, outputFile);
+ }
+ }
+ }
+
private BitmapProducer[] getProducers(Configuration cfg) {
Configuration[] children = cfg.getChildren("producer");
BitmapProducer[] producers = new BitmapProducer[children.length];
@@ -291,7 +285,7 @@
System.out.println("Regular exit...");
} catch (Exception e) {
- System.out.println("Exception caugth...");
+ System.out.println("Exception caught...");
e.printStackTrace();
}
}
Modified: xmlgraphics/fop/branches/Temp_Interleaved_Page_Line_Breaking/test/layoutengine/disabled-testcases.xml
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/Temp_Interleaved_Page_Line_Breaking/test/layoutengine/disabled-testcases.xml?rev=627882&r1=627881&r2=627882&view=diff
==============================================================================
--- xmlgraphics/fop/branches/Temp_Interleaved_Page_Line_Breaking/test/layoutengine/disabled-testcases.xml (original)
+++ xmlgraphics/fop/branches/Temp_Interleaved_Page_Line_Breaking/test/layoutengine/disabled-testcases.xml Thu Feb 14 13:55:44 2008
@@ -27,13 +27,6 @@
nominal line.</description>
</testcase>
<testcase>
- <name>Bugzilla #36391: reference-orientation</name>
- <file>block-container_reference-orientation_bug36391.xml</file>
- <description>There's a problem involving nested block-containers
- and reference-orientation 180/-180.</description>
- <reference>http://issues.apache.org/bugzilla/show_bug.cgi?id=36391</reference>
- </testcase>
- <testcase>
<name>Auto-height block-containers produce fences</name>
<file>block-container_space-before_space-after_3.xml</file>
<description>Block-containers with no height currently don't
Propchange: xmlgraphics/fop/branches/Temp_Interleaved_Page_Line_Breaking/test/layoutengine/disabled-testcases.xml
------------------------------------------------------------------------------
--- svn:keywords (original)
+++ svn:keywords Thu Feb 14 13:55:44 2008
@@ -1 +1 @@
-Id
+Revision Id
Modified: xmlgraphics/fop/branches/Temp_Interleaved_Page_Line_Breaking/test/layoutengine/hyphenation-testcases/block_hyphenation-ladder-count.xml
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/Temp_Interleaved_Page_Line_Breaking/test/layoutengine/hyphenation-testcases/block_hyphenation-ladder-count.xml?rev=627882&r1=627881&r2=627882&view=diff
==============================================================================
--- xmlgraphics/fop/branches/Temp_Interleaved_Page_Line_Breaking/test/layoutengine/hyphenation-testcases/block_hyphenation-ladder-count.xml (original)
+++ xmlgraphics/fop/branches/Temp_Interleaved_Page_Line_Breaking/test/layoutengine/hyphenation-testcases/block_hyphenation-ladder-count.xml Thu Feb 14 13:55:44 2008
@@ -1,355 +1,355 @@
-<?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>
- Checks hyphenation for various languages
- </p>
- </info>
- <fo>
-
-<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
-
- <fo:layout-master-set>
- <fo:simple-page-master master-name="simple"
- page-height="29.7cm"
- page-width="21cm"
- margin-top="1cm"
- margin-bottom="2cm"
- margin-left="7cm"
- margin-right="3cm">
- <fo:region-body margin-top="1.5cm"/>
- </fo:simple-page-master>
- </fo:layout-master-set>
- <!-- end: defines page layout -->
-
-
- <fo:page-sequence master-reference="simple">
-
- <fo:flow flow-name="xsl-region-body"
- text-align="justify">
-
- <fo:block font-size="12pt"
- font-family="sans-serif"
- background-color="blue"
- color="white"
- text-align="start">
- US English hypenation-ladder-count="no-limit"
- </fo:block>
- <fo:block font-size="12pt"
- font-family="sans-serif"
- space-after="3pt"
- language="en"
- country="US"
- hyphenate="true"
- hyphenation-ladder-count="no-limit"
- >
- This document has been reviewed by W3C Members and other interested parties and has been endorsed by the Director as a
- W3C Recommendation. It is a stable document and may be used as reference material or cited as a normative reference from
- another document. W3C's role in making the Recommendation is to draw attention to the specification and to promote its
- widespread deployment. This enhances the functionality and interoperability of the Web.
- </fo:block>
-
- <fo:block font-size="12pt"
- font-family="sans-serif"
- background-color="blue"
- color="white"
- text-align="start">
- US English hypenation-ladder-count="1"
- </fo:block>
- <fo:block font-size="12pt"
- font-family="sans-serif"
- space-after="3pt"
- language="en"
- country="US"
- hyphenate="true"
- hyphenation-ladder-count="1"
- >
- This document has been reviewed by W3C Members and other interested parties and has been endorsed by the Director as a
- W3C Recommendation. It is a stable document and may be used as reference material or cited as a normative reference from
- another document. W3C's role in making the Recommendation is to draw attention to the specification and to promote its
- widespread deployment. This enhances the functionality and interoperability of the Web.
- </fo:block>
-
- <fo:block font-size="12pt"
- font-family="sans-serif"
- background-color="blue"
- color="white"
- text-align="start">
- US English hypenation-ladder-count="2"
- </fo:block>
- <fo:block font-size="12pt"
- font-family="sans-serif"
- space-after="3pt"
- language="en"
- country="US"
- hyphenate="true"
- hyphenation-ladder-count="2"
- >
- This document has been reviewed by W3C Members and other interested parties and has been endorsed by the Director as a
- W3C Recommendation. It is a stable document and may be used as reference material or cited as a normative reference from
- another document. W3C's role in making the Recommendation is to draw attention to the specification and to promote its
- widespread deployment. This enhances the functionality and interoperability of the Web.
- </fo:block>
-
- <fo:block font-size="12pt"
- font-family="sans-serif"
- background-color="blue"
- color="white"
- text-align="start">
- US English hypenation-ladder-count="3"
- </fo:block>
- <fo:block font-size="12pt"
- font-family="sans-serif"
- space-after="3pt"
- language="en"
- country="US"
- hyphenate="true"
- hyphenation-ladder-count="3"
- >
- This document has been reviewed by W3C Members and other interested parties and has been endorsed by the Director as a
- W3C Recommendation. It is a stable document and may be used as reference material or cited as a normative reference from
- another document. W3C's role in making the Recommendation is to draw attention to the specification and to promote its
- widespread deployment. This enhances the functionality and interoperability of the Web.
- </fo:block>
-
- <fo:block font-size="12pt"
- font-family="sans-serif"
- background-color="blue"
- color="white"
- text-align="start">
- US English hypenation-ladder-count="4"
- </fo:block>
- <fo:block font-size="12pt"
- font-family="sans-serif"
- space-after="3pt"
- language="en"
- country="US"
- hyphenate="true"
- hyphenation-ladder-count="4"
- >
- This document has been reviewed by W3C Members and other interested parties and has been endorsed by the Director as a
- W3C Recommendation. It is a stable document and may be used as reference material or cited as a normative reference from
- another document. W3C's role in making the Recommendation is to draw attention to the specification and to promote its
- widespread deployment. This enhances the functionality and interoperability of the Web.
- </fo:block>
-
- <fo:block break-before="page"
- font-size="12pt"
- font-family="sans-serif"
- background-color="blue"
- color="white"
- text-align="start">
- German hypenation-ladder-count="no-limit"
- </fo:block>
-
- <fo:block font-size="12pt"
- font-family="sans-serif"
- space-after="3pt"
- language="de"
- hyphenate="true"
- hyphenation-ladder-count="no-limit"
- >
- 1. Warum TEI?
- Die Verwendungszeit elektronischer Editionen wird von mehreren
- Faktoren verkürzt: der kurzen Lebensdauer der Programme, die zu
- ihrer Darstellung verwendet werden, der etwas längeren der
- Betriebssysteme, unter denen die Darstellungsprogramme laufen,
- der logischen Einrichtung des Datenträgers, auf dem sich die
- Edition befindet, und dessen physischer Dauer.
- </fo:block>
-
- <fo:block font-size="12pt"
- font-family="sans-serif"
- background-color="blue"
- color="white"
- text-align="start">
- German hypenation-ladder-count="1"
- </fo:block>
-
- <fo:block font-size="12pt"
- font-family="sans-serif"
- space-after="3pt"
- language="de"
- hyphenate="true"
- hyphenation-ladder-count="1"
- >
- 1. Warum TEI?
- Die Verwendungszeit elektronischer Editionen wird von mehreren
- Faktoren verkürzt: der kurzen Lebensdauer der Programme, die zu
- ihrer Darstellung verwendet werden, der etwas längeren der
- Betriebssysteme, unter denen die Darstellungsprogramme laufen,
- der logischen Einrichtung des Datenträgers, auf dem sich die
- Edition befindet, und dessen physischer Dauer.
- </fo:block>
-
- <fo:block font-size="12pt"
- font-family="sans-serif"
- background-color="blue"
- color="white"
- text-align="start">
- German hypenation-ladder-count="2"
- </fo:block>
-
- <fo:block font-size="12pt"
- font-family="sans-serif"
- space-after="3pt"
- language="de"
- hyphenate="true"
- hyphenation-ladder-count="2"
- >
- 1. Warum TEI?
- Die Verwendungszeit elektronischer Editionen wird von mehreren
- Faktoren verkürzt: der kurzen Lebensdauer der Programme, die zu
- ihrer Darstellung verwendet werden, der etwas längeren der
- Betriebssysteme, unter denen die Darstellungsprogramme laufen,
- der logischen Einrichtung des Datenträgers, auf dem sich die
- Edition befindet, und dessen physischer Dauer.
- </fo:block>
-
- <fo:block font-size="12pt"
- font-family="sans-serif"
- background-color="blue"
- color="white"
- text-align="start">
- German hypenation-ladder-count="3"
- </fo:block>
-
- <fo:block font-size="12pt"
- font-family="sans-serif"
- space-after="3pt"
- language="de"
- hyphenate="true"
- hyphenation-ladder-count="3"
- >
- 1. Warum TEI?
- Die Verwendungszeit elektronischer Editionen wird von mehreren
- Faktoren verkürzt: der kurzen Lebensdauer der Programme, die zu
- ihrer Darstellung verwendet werden, der etwas längeren der
- Betriebssysteme, unter denen die Darstellungsprogramme laufen,
- der logischen Einrichtung des Datenträgers, auf dem sich die
- Edition befindet, und dessen physischer Dauer.
- </fo:block>
-
- <fo:block font-size="12pt"
- font-family="sans-serif"
- background-color="blue"
- color="white"
- text-align="start">
- German hypenation-ladder-count="4"
- </fo:block>
-
- <fo:block font-size="12pt"
- font-family="sans-serif"
- space-after="3pt"
- language="de"
- hyphenate="true"
- hyphenation-ladder-count="4"
- >
- 1. Warum TEI?
- Die Verwendungszeit elektronischer Editionen wird von mehreren
- Faktoren verkürzt: der kurzen Lebensdauer der Programme, die zu
- ihrer Darstellung verwendet werden, der etwas längeren der
- Betriebssysteme, unter denen die Darstellungsprogramme laufen,
- der logischen Einrichtung des Datenträgers, auf dem sich die
- Edition befindet, und dessen physischer Dauer.
- </fo:block>
-
- </fo:flow>
- </fo:page-sequence>
-</fo:root>
-</fo>
- <checks>
- <eval expected="8" xpath="count(//pageViewport[1]//flow/block[2]/lineArea)"/>
- <eval expected="Di-" xpath="//pageViewport[1]//flow/block[2]/lineArea[2]/text/word[10]"/>
- <eval expected="norma-" xpath="//pageViewport[1]//flow/block[2]/lineArea[4]/text/word[12]"/>
- <eval expected="mak-" xpath="//pageViewport[1]//flow/block[2]/lineArea[5]/text/word[9]"/>
- <eval expected="specifi-" xpath="//pageViewport[1]//flow/block[2]/lineArea[6]/text/word[10]"/>
- <eval expected="en-" xpath="//pageViewport[1]//flow/block[2]/lineArea[7]/text/word[9]"/>
-
- <eval expected="9" xpath="count(//pageViewport[1]//flow/block[4]/lineArea)"/>
- <eval expected="Di-" xpath="//pageViewport[1]//flow/block[4]/lineArea[2]/text/word[10]"/>
- <eval expected="nor-" xpath="//pageViewport[1]//flow/block[4]/lineArea[4]/text/word[12]"/>
- <eval expected="in" xpath="//pageViewport[1]//flow/block[4]/lineArea[5]/text/word[8]"/>
- <eval expected="the" xpath="//pageViewport[1]//flow/block[4]/lineArea[6]/text/word[9]"/>
- <eval expected="deployment." xpath="//pageViewport[1]//flow/block[4]/lineArea[7]/text/word[7]"/>
-
- <eval expected="8" xpath="count(//pageViewport[1]//flow/block[6]/lineArea)"/>
- <eval expected="Di-" xpath="//pageViewport[1]//flow/block[6]/lineArea[2]/text/word[10]"/>
- <eval expected="norma-" xpath="//pageViewport[1]//flow/block[6]/lineArea[4]/text/word[12]"/>
- <eval expected="making" xpath="//pageViewport[1]//flow/block[6]/lineArea[5]/text/word[9]"/>
- <eval expected="specifica-" xpath="//pageViewport[1]//flow/block[6]/lineArea[6]/text/word[9]"/>
- <eval expected="en-" xpath="//pageViewport[1]//flow/block[6]/lineArea[7]/text/word[9]"/>
-
- <eval expected="8" xpath="count(//pageViewport[1]//flow/block[8]/lineArea)"/>
- <eval expected="Di-" xpath="//pageViewport[1]//flow/block[8]/lineArea[2]/text/word[10]"/>
- <eval expected="norma-" xpath="//pageViewport[1]//flow/block[8]/lineArea[4]/text/word[12]"/>
- <eval expected="making" xpath="//pageViewport[1]//flow/block[8]/lineArea[5]/text/word[9]"/>
- <eval expected="specifica-" xpath="//pageViewport[1]//flow/block[8]/lineArea[6]/text/word[9]"/>
- <eval expected="en-" xpath="//pageViewport[1]//flow/block[8]/lineArea[7]/text/word[9]"/>
-
- <eval expected="8" xpath="count(//pageViewport[1]//flow/block[10]/lineArea)"/>
- <eval expected="Di-" xpath="//pageViewport[1]//flow/block[10]/lineArea[2]/text/word[10]"/>
- <eval expected="norma-" xpath="//pageViewport[1]//flow/block[10]/lineArea[4]/text/word[12]"/>
- <eval expected="mak-" xpath="//pageViewport[1]//flow/block[10]/lineArea[5]/text/word[9]"/>
- <eval expected="specifi-" xpath="//pageViewport[1]//flow/block[10]/lineArea[6]/text/word[10]"/>
- <eval expected="en-" xpath="//pageViewport[1]//flow/block[10]/lineArea[7]/text/word[9]"/>
-
- <eval expected="7" xpath="count(//pageViewport[2]//flow/block[2]/lineArea)"/>
- <eval expected="Editio-" xpath="//pageViewport[2]//flow/block[2]/lineArea[1]/text/word[7]"/>
- <eval expected="Le-" xpath="//pageViewport[2]//flow/block[2]/lineArea[2]/text/word[9]"/>
- <eval expected="verwen-" xpath="//pageViewport[2]//flow/block[2]/lineArea[3]/text/word[8]"/>
- <eval expected="un-" xpath="//pageViewport[2]//flow/block[2]/lineArea[4]/text/word[8]"/>
- <eval expected="logischen" xpath="//pageViewport[2]//flow/block[2]/lineArea[5]/text/word[7]"/>
- <eval expected="be-" xpath="//pageViewport[2]//flow/block[2]/lineArea[6]/text/word[9]"/>
-
- <eval expected="7" xpath="count(//pageViewport[2]//flow/block[4]/lineArea)"/>
- <eval expected="Edi-" xpath="//pageViewport[2]//flow/block[4]/lineArea[1]/text/word[7]"/>
- <eval expected="kurzen" xpath="//pageViewport[2]//flow/block[4]/lineArea[2]/text/word[8]"/>
- <eval expected="ver-" xpath="//pageViewport[2]//flow/block[4]/lineArea[3]/text/word[8]"/>
- <eval expected="Betriebssysteme," xpath="//pageViewport[2]//flow/block[4]/lineArea[4]/text/word[7]"/>
- <eval expected="lo-" xpath="//pageViewport[2]//flow/block[4]/lineArea[5]/text/word[7]"/>
- <eval expected="die" xpath="//pageViewport[2]//flow/block[4]/lineArea[6]/text/word[8]"/>
-
- <eval expected="7" xpath="count(//pageViewport[2]//flow/block[6]/lineArea)"/>
- <eval expected="Edi-" xpath="//pageViewport[2]//flow/block[6]/lineArea[1]/text/word[7]"/>
- <eval expected="kurzen" xpath="//pageViewport[2]//flow/block[6]/lineArea[2]/text/word[8]"/>
- <eval expected="ver-" xpath="//pageViewport[2]//flow/block[6]/lineArea[3]/text/word[8]"/>
- <eval expected="Betriebssysteme," xpath="//pageViewport[2]//flow/block[6]/lineArea[4]/text/word[7]"/>
- <eval expected="logi-" xpath="//pageViewport[2]//flow/block[6]/lineArea[5]/text/word[7]"/>
- <eval expected="Edi-" xpath="//pageViewport[2]//flow/block[6]/lineArea[6]/text/word[9]"/>
-
- <eval expected="7" xpath="count(//pageViewport[2]//flow/block[8]/lineArea)"/>
- <eval expected="Editio-" xpath="//pageViewport[2]//flow/block[8]/lineArea[1]/text/word[7]"/>
- <eval expected="Le-" xpath="//pageViewport[2]//flow/block[8]/lineArea[2]/text/word[9]"/>
- <eval expected="ver-" xpath="//pageViewport[2]//flow/block[8]/lineArea[3]/text/word[8]"/>
- <eval expected="Betriebssysteme," xpath="//pageViewport[2]//flow/block[8]/lineArea[4]/text/word[7]"/>
- <eval expected="logi-" xpath="//pageViewport[2]//flow/block[8]/lineArea[5]/text/word[7]"/>
- <eval expected="Edi-" xpath="//pageViewport[2]//flow/block[8]/lineArea[6]/text/word[9]"/>
-
- <eval expected="7" xpath="count(//pageViewport[2]//flow/block[10]/lineArea)"/>
- <eval expected="Editio-" xpath="//pageViewport[2]//flow/block[10]/lineArea[1]/text/word[7]"/>
- <eval expected="Le-" xpath="//pageViewport[2]//flow/block[10]/lineArea[2]/text/word[9]"/>
- <eval expected="verwen-" xpath="//pageViewport[2]//flow/block[10]/lineArea[3]/text/word[8]"/>
- <eval expected="un-" xpath="//pageViewport[2]//flow/block[10]/lineArea[4]/text/word[8]"/>
- <eval expected="logischen" xpath="//pageViewport[2]//flow/block[10]/lineArea[5]/text/word[7]"/>
- <eval expected="be-" xpath="//pageViewport[2]//flow/block[10]/lineArea[6]/text/word[9]"/>
-
- </checks>
-</testcase>
+<?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>
+ Checks hyphenation for various languages
+ </p>
+ </info>
+ <fo>
+
+<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
+
+ <fo:layout-master-set>
+ <fo:simple-page-master master-name="simple"
+ page-height="29.7cm"
+ page-width="21cm"
+ margin-top="1cm"
+ margin-bottom="2cm"
+ margin-left="7cm"
+ margin-right="3cm">
+ <fo:region-body margin-top="1.5cm"/>
+ </fo:simple-page-master>
+ </fo:layout-master-set>
+ <!-- end: defines page layout -->
+
+
+ <fo:page-sequence master-reference="simple">
+
+ <fo:flow flow-name="xsl-region-body"
+ text-align="justify">
+
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
+ background-color="blue"
+ color="white"
+ text-align="start">
+ US English hypenation-ladder-count="no-limit"
+ </fo:block>
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
+ space-after="3pt"
+ language="en"
+ country="US"
+ hyphenate="true"
+ hyphenation-ladder-count="no-limit"
+ >
+ This document has been reviewed by W3C Members and other interested parties and has been endorsed by the Director as a
+ W3C Recommendation. It is a stable document and may be used as reference material or cited as a normative reference from
+ another document. W3C's role in making the Recommendation is to draw attention to the specification and to promote its
+ widespread deployment. This enhances the functionality and interoperability of the Web.
+ </fo:block>
+
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
+ background-color="blue"
+ color="white"
+ text-align="start">
+ US English hypenation-ladder-count="1"
+ </fo:block>
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
+ space-after="3pt"
+ language="en"
+ country="US"
+ hyphenate="true"
+ hyphenation-ladder-count="1"
+ >
+ This document has been reviewed by W3C Members and other interested parties and has been endorsed by the Director as a
+ W3C Recommendation. It is a stable document and may be used as reference material or cited as a normative reference from
+ another document. W3C's role in making the Recommendation is to draw attention to the specification and to promote its
+ widespread deployment. This enhances the functionality and interoperability of the Web.
+ </fo:block>
+
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
+ background-color="blue"
+ color="white"
+ text-align="start">
+ US English hypenation-ladder-count="2"
+ </fo:block>
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
+ space-after="3pt"
+ language="en"
+ country="US"
+ hyphenate="true"
+ hyphenation-ladder-count="2"
+ >
+ This document has been reviewed by W3C Members and other interested parties and has been endorsed by the Director as a
+ W3C Recommendation. It is a stable document and may be used as reference material or cited as a normative reference from
+ another document. W3C's role in making the Recommendation is to draw attention to the specification and to promote its
+ widespread deployment. This enhances the functionality and interoperability of the Web.
+ </fo:block>
+
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
+ background-color="blue"
+ color="white"
+ text-align="start">
+ US English hypenation-ladder-count="3"
+ </fo:block>
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
+ space-after="3pt"
+ language="en"
+ country="US"
+ hyphenate="true"
+ hyphenation-ladder-count="3"
+ >
+ This document has been reviewed by W3C Members and other interested parties and has been endorsed by the Director as a
+ W3C Recommendation. It is a stable document and may be used as reference material or cited as a normative reference from
+ another document. W3C's role in making the Recommendation is to draw attention to the specification and to promote its
+ widespread deployment. This enhances the functionality and interoperability of the Web.
+ </fo:block>
+
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
+ background-color="blue"
+ color="white"
+ text-align="start">
+ US English hypenation-ladder-count="4"
+ </fo:block>
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
+ space-after="3pt"
+ language="en"
+ country="US"
+ hyphenate="true"
+ hyphenation-ladder-count="4"
+ >
+ This document has been reviewed by W3C Members and other interested parties and has been endorsed by the Director as a
+ W3C Recommendation. It is a stable document and may be used as reference material or cited as a normative reference from
+ another document. W3C's role in making the Recommendation is to draw attention to the specification and to promote its
+ widespread deployment. This enhances the functionality and interoperability of the Web.
+ </fo:block>
+
+ <fo:block break-before="page"
+ font-size="12pt"
+ font-family="sans-serif"
+ background-color="blue"
+ color="white"
+ text-align="start">
+ German hypenation-ladder-count="no-limit"
+ </fo:block>
+
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
+ space-after="3pt"
+ language="de"
+ hyphenate="true"
+ hyphenation-ladder-count="no-limit"
+ >
+ 1. Warum TEI?
+ Die Verwendungszeit elektronischer Editionen wird von mehreren
+ Faktoren verkürzt: der kurzen Lebensdauer der Programme, die zu
+ ihrer Darstellung verwendet werden, der etwas längeren der
+ Betriebssysteme, unter denen die Darstellungsprogramme laufen,
+ der logischen Einrichtung des Datenträgers, auf dem sich die
+ Edition befindet, und dessen physischer Dauer.
+ </fo:block>
+
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
+ background-color="blue"
+ color="white"
+ text-align="start">
+ German hypenation-ladder-count="1"
+ </fo:block>
+
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
+ space-after="3pt"
+ language="de"
+ hyphenate="true"
+ hyphenation-ladder-count="1"
+ >
+ 1. Warum TEI?
+ Die Verwendungszeit elektronischer Editionen wird von mehreren
+ Faktoren verkürzt: der kurzen Lebensdauer der Programme, die zu
+ ihrer Darstellung verwendet werden, der etwas längeren der
+ Betriebssysteme, unter denen die Darstellungsprogramme laufen,
+ der logischen Einrichtung des Datenträgers, auf dem sich die
+ Edition befindet, und dessen physischer Dauer.
+ </fo:block>
+
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
+ background-color="blue"
+ color="white"
+ text-align="start">
+ German hypenation-ladder-count="2"
+ </fo:block>
+
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
+ space-after="3pt"
+ language="de"
+ hyphenate="true"
+ hyphenation-ladder-count="2"
+ >
+ 1. Warum TEI?
+ Die Verwendungszeit elektronischer Editionen wird von mehreren
+ Faktoren verkürzt: der kurzen Lebensdauer der Programme, die zu
+ ihrer Darstellung verwendet werden, der etwas längeren der
+ Betriebssysteme, unter denen die Darstellungsprogramme laufen,
+ der logischen Einrichtung des Datenträgers, auf dem sich die
+ Edition befindet, und dessen physischer Dauer.
+ </fo:block>
+
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
+ background-color="blue"
+ color="white"
+ text-align="start">
+ German hypenation-ladder-count="3"
+ </fo:block>
+
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
+ space-after="3pt"
+ language="de"
+ hyphenate="true"
+ hyphenation-ladder-count="3"
+ >
+ 1. Warum TEI?
+ Die Verwendungszeit elektronischer Editionen wird von mehreren
+ Faktoren verkürzt: der kurzen Lebensdauer der Programme, die zu
+ ihrer Darstellung verwendet werden, der etwas längeren der
+ Betriebssysteme, unter denen die Darstellungsprogramme laufen,
+ der logischen Einrichtung des Datenträgers, auf dem sich die
+ Edition befindet, und dessen physischer Dauer.
+ </fo:block>
+
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
+ background-color="blue"
+ color="white"
+ text-align="start">
+ German hypenation-ladder-count="4"
+ </fo:block>
+
+ <fo:block font-size="12pt"
+ font-family="sans-serif"
+ space-after="3pt"
+ language="de"
+ hyphenate="true"
+ hyphenation-ladder-count="4"
+ >
+ 1. Warum TEI?
+ Die Verwendungszeit elektronischer Editionen wird von mehreren
+ Faktoren verkürzt: der kurzen Lebensdauer der Programme, die zu
+ ihrer Darstellung verwendet werden, der etwas längeren der
+ Betriebssysteme, unter denen die Darstellungsprogramme laufen,
+ der logischen Einrichtung des Datenträgers, auf dem sich die
+ Edition befindet, und dessen physischer Dauer.
+ </fo:block>
+
+ </fo:flow>
+ </fo:page-sequence>
+</fo:root>
+</fo>
+ <checks>
+ <eval expected="8" xpath="count(//pageViewport[1]//flow/block[2]/lineArea)"/>
+ <eval expected="Di-" xpath="//pageViewport[1]//flow/block[2]/lineArea[2]/text/word[10]"/>
+ <eval expected="norma-" xpath="//pageViewport[1]//flow/block[2]/lineArea[4]/text/word[12]"/>
+ <eval expected="mak-" xpath="//pageViewport[1]//flow/block[2]/lineArea[5]/text/word[9]"/>
+ <eval expected="specifi-" xpath="//pageViewport[1]//flow/block[2]/lineArea[6]/text/word[10]"/>
+ <eval expected="en-" xpath="//pageViewport[1]//flow/block[2]/lineArea[7]/text/word[9]"/>
+
+ <eval expected="9" xpath="count(//pageViewport[1]//flow/block[4]/lineArea)"/>
+ <eval expected="Di-" xpath="//pageViewport[1]//flow/block[4]/lineArea[2]/text/word[10]"/>
+ <eval expected="nor-" xpath="//pageViewport[1]//flow/block[4]/lineArea[4]/text/word[12]"/>
+ <eval expected="in" xpath="//pageViewport[1]//flow/block[4]/lineArea[5]/text/word[8]"/>
+ <eval expected="the" xpath="//pageViewport[1]//flow/block[4]/lineArea[6]/text/word[9]"/>
+ <eval expected="deployment." xpath="//pageViewport[1]//flow/block[4]/lineArea[7]/text/word[7]"/>
+
+ <eval expected="8" xpath="count(//pageViewport[1]//flow/block[6]/lineArea)"/>
+ <eval expected="Di-" xpath="//pageViewport[1]//flow/block[6]/lineArea[2]/text/word[10]"/>
+ <eval expected="norma-" xpath="//pageViewport[1]//flow/block[6]/lineArea[4]/text/word[12]"/>
+ <eval expected="making" xpath="//pageViewport[1]//flow/block[6]/lineArea[5]/text/word[9]"/>
+ <eval expected="specifica-" xpath="//pageViewport[1]//flow/block[6]/lineArea[6]/text/word[9]"/>
+ <eval expected="en-" xpath="//pageViewport[1]//flow/block[6]/lineArea[7]/text/word[9]"/>
+
+ <eval expected="8" xpath="count(//pageViewport[1]//flow/block[8]/lineArea)"/>
+ <eval expected="Di-" xpath="//pageViewport[1]//flow/block[8]/lineArea[2]/text/word[10]"/>
+ <eval expected="norma-" xpath="//pageViewport[1]//flow/block[8]/lineArea[4]/text/word[12]"/>
+ <eval expected="making" xpath="//pageViewport[1]//flow/block[8]/lineArea[5]/text/word[9]"/>
+ <eval expected="specifica-" xpath="//pageViewport[1]//flow/block[8]/lineArea[6]/text/word[9]"/>
+ <eval expected="en-" xpath="//pageViewport[1]//flow/block[8]/lineArea[7]/text/word[9]"/>
+
+ <eval expected="8" xpath="count(//pageViewport[1]//flow/block[10]/lineArea)"/>
+ <eval expected="Di-" xpath="//pageViewport[1]//flow/block[10]/lineArea[2]/text/word[10]"/>
+ <eval expected="norma-" xpath="//pageViewport[1]//flow/block[10]/lineArea[4]/text/word[12]"/>
+ <eval expected="mak-" xpath="//pageViewport[1]//flow/block[10]/lineArea[5]/text/word[9]"/>
+ <eval expected="specifi-" xpath="//pageViewport[1]//flow/block[10]/lineArea[6]/text/word[10]"/>
+ <eval expected="en-" xpath="//pageViewport[1]//flow/block[10]/lineArea[7]/text/word[9]"/>
+
+ <eval expected="7" xpath="count(//pageViewport[2]//flow/block[2]/lineArea)"/>
+ <eval expected="Editio-" xpath="//pageViewport[2]//flow/block[2]/lineArea[1]/text/word[7]"/>
+ <eval expected="Le-" xpath="//pageViewport[2]//flow/block[2]/lineArea[2]/text/word[9]"/>
+ <eval expected="verwen-" xpath="//pageViewport[2]//flow/block[2]/lineArea[3]/text/word[8]"/>
+ <eval expected="un-" xpath="//pageViewport[2]//flow/block[2]/lineArea[4]/text/word[8]"/>
+ <eval expected="logischen" xpath="//pageViewport[2]//flow/block[2]/lineArea[5]/text/word[7]"/>
+ <eval expected="be-" xpath="//pageViewport[2]//flow/block[2]/lineArea[6]/text/word[9]"/>
+
+ <eval expected="7" xpath="count(//pageViewport[2]//flow/block[4]/lineArea)"/>
+ <eval expected="Edi-" xpath="//pageViewport[2]//flow/block[4]/lineArea[1]/text/word[7]"/>
+ <eval expected="kurzen" xpath="//pageViewport[2]//flow/block[4]/lineArea[2]/text/word[8]"/>
+ <eval expected="ver-" xpath="//pageViewport[2]//flow/block[4]/lineArea[3]/text/word[8]"/>
+ <eval expected="Betriebssysteme," xpath="//pageViewport[2]//flow/block[4]/lineArea[4]/text/word[7]"/>
+ <eval expected="lo-" xpath="//pageViewport[2]//flow/block[4]/lineArea[5]/text/word[7]"/>
+ <eval expected="die" xpath="//pageViewport[2]//flow/block[4]/lineArea[6]/text/word[8]"/>
+
+ <eval expected="7" xpath="count(//pageViewport[2]//flow/block[6]/lineArea)"/>
+ <eval expected="Edi-" xpath="//pageViewport[2]//flow/block[6]/lineArea[1]/text/word[7]"/>
+ <eval expected="kurzen" xpath="//pageViewport[2]//flow/block[6]/lineArea[2]/text/word[8]"/>
+ <eval expected="ver-" xpath="//pageViewport[2]//flow/block[6]/lineArea[3]/text/word[8]"/>
+ <eval expected="Betriebssysteme," xpath="//pageViewport[2]//flow/block[6]/lineArea[4]/text/word[7]"/>
+ <eval expected="logi-" xpath="//pageViewport[2]//flow/block[6]/lineArea[5]/text/word[7]"/>
+ <eval expected="Edi-" xpath="//pageViewport[2]//flow/block[6]/lineArea[6]/text/word[9]"/>
+
+ <eval expected="7" xpath="count(//pageViewport[2]//flow/block[8]/lineArea)"/>
+ <eval expected="Editio-" xpath="//pageViewport[2]//flow/block[8]/lineArea[1]/text/word[7]"/>
+ <eval expected="Le-" xpath="//pageViewport[2]//flow/block[8]/lineArea[2]/text/word[9]"/>
+ <eval expected="ver-" xpath="//pageViewport[2]//flow/block[8]/lineArea[3]/text/word[8]"/>
+ <eval expected="Betriebssysteme," xpath="//pageViewport[2]//flow/block[8]/lineArea[4]/text/word[7]"/>
+ <eval expected="logi-" xpath="//pageViewport[2]//flow/block[8]/lineArea[5]/text/word[7]"/>
+ <eval expected="Edi-" xpath="//pageViewport[2]//flow/block[8]/lineArea[6]/text/word[9]"/>
+
+ <eval expected="7" xpath="count(//pageViewport[2]//flow/block[10]/lineArea)"/>
+ <eval expected="Editio-" xpath="//pageViewport[2]//flow/block[10]/lineArea[1]/text/word[7]"/>
+ <eval expected="Le-" xpath="//pageViewport[2]//flow/block[10]/lineArea[2]/text/word[9]"/>
+ <eval expected="verwen-" xpath="//pageViewport[2]//flow/block[10]/lineArea[3]/text/word[8]"/>
+ <eval expected="un-" xpath="//pageViewport[2]//flow/block[10]/lineArea[4]/text/word[8]"/>
+ <eval expected="logischen" xpath="//pageViewport[2]//flow/block[10]/lineArea[5]/text/word[7]"/>
+ <eval expected="be-" xpath="//pageViewport[2]//flow/block[10]/lineArea[6]/text/word[9]"/>
+
+ </checks>
+</testcase>
Propchange: xmlgraphics/fop/branches/Temp_Interleaved_Page_Line_Breaking/test/layoutengine/hyphenation-testcases/block_hyphenation-ladder-count.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: xmlgraphics/fop/branches/Temp_Interleaved_Page_Line_Breaking/test/layoutengine/hyphenation-testcases/block_hyphenation-ladder-count.xml
------------------------------------------------------------------------------
--- svn:keywords (original)
+++ svn:keywords Thu Feb 14 13:55:44 2008
@@ -1 +1 @@
-Id
+Revision Id
Modified: xmlgraphics/fop/branches/Temp_Interleaved_Page_Line_Breaking/test/layoutengine/hyphenation-testcases/block_hyphenation_kerning.xml
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/branches/Temp_Interleaved_Page_Line_Breaking/test/layoutengine/hyphenation-testcases/block_hyphenation_kerning.xml?rev=627882&r1=627881&r2=627882&view=diff
==============================================================================
--- xmlgraphics/fop/branches/Temp_Interleaved_Page_Line_Breaking/test/layoutengine/hyphenation-testcases/block_hyphenation_kerning.xml (original)
+++ xmlgraphics/fop/branches/Temp_Interleaved_Page_Line_Breaking/test/layoutengine/hyphenation-testcases/block_hyphenation_kerning.xml Thu Feb 14 13:55:44 2008
@@ -45,6 +45,8 @@
</fo>
<checks>
<eval expected="1" xpath="count(//pageViewport)"/>
+ <eval expected="en" xpath="/areaTree/pageSequence/@language"/>
+ <true xpath="not(boolean(/areaTree/pageSequence/@country))"/>
<eval expected="17230" xpath="//flow/block[1]/lineArea[1]/text[1]/@twsadjust"/>
<eval expected="-1339" xpath="//flow/block[1]/lineArea[2]/text[1]/@twsadjust"/>
Propchange: xmlgraphics/fop/branches/Temp_Interleaved_Page_Line_Breaking/test/layoutengine/hyphenation-testcases/block_hyphenation_kerning.xml
------------------------------------------------------------------------------
--- svn:keywords (original)
+++ svn:keywords Thu Feb 14 13:55:44 2008
@@ -1 +1 @@
-Id
+Revision Id
Propchange: xmlgraphics/fop/branches/Temp_Interleaved_Page_Line_Breaking/test/layoutengine/hyphenation-testcases/block_hyphenation_linefeed_preserve.xml
------------------------------------------------------------------------------
--- svn:keywords (original)
+++ svn:keywords Thu Feb 14 13:55:44 2008
@@ -1 +1 @@
-Id
+Revision Id
Propchange: xmlgraphics/fop/branches/Temp_Interleaved_Page_Line_Breaking/test/layoutengine/hyphenation-testcases/block_hyphenation_no-wrap.xml
------------------------------------------------------------------------------
--- svn:keywords (original)
+++ svn:keywords Thu Feb 14 13:55:44 2008
@@ -1 +1 @@
-Id
+Revision Id
Propchange: xmlgraphics/fop/branches/Temp_Interleaved_Page_Line_Breaking/test/layoutengine/hyphenation-testcases/block_shy_linebreaking_hyph.xml
------------------------------------------------------------------------------
--- svn:keywords (original)
+++ svn:keywords Thu Feb 14 13:55:44 2008
@@ -1 +1 @@
-Id
+Revision Id
Propchange: xmlgraphics/fop/branches/Temp_Interleaved_Page_Line_Breaking/test/layoutengine/hyphenation-testcases/block_uax14_linebreaking_hyph.xml
------------------------------------------------------------------------------
--- svn:keywords (original)
+++ svn:keywords Thu Feb 14 13:55:44 2008
@@ -1 +1 @@
-Id
+Revision Id
Propchange: xmlgraphics/fop/branches/Temp_Interleaved_Page_Line_Breaking/test/layoutengine/hyphenation-testcases/footnote_in_inline.xml
------------------------------------------------------------------------------
--- svn:keywords (original)
+++ svn:keywords Thu Feb 14 13:55:44 2008
@@ -1 +1 @@
-Id
+Revision Id
---------------------------------------------------------------------
To unsubscribe, e-mail: fop-commits-unsubscribe@xmlgraphics.apache.org
For additional commands, e-mail: fop-commits-help@xmlgraphics.apache.org