keiron 02/01/03 02:39:56
Modified: src/org/apache/fop/apps Tag: fop-0_20_2-maintain Driver.java
StreamRenderer.java
src/org/apache/fop/fo Tag: fop-0_20_2-maintain
FOTreeBuilder.java
src/org/apache/fop/fo/pagination Tag: fop-0_20_2-maintain
PageSequence.java
Added: src/org/apache/fop/apps Tag: fop-0_20_2-maintain
FormattingResults.java PageSequenceResults.java
Log:
Formatting results patch to enable embedders to obtain info from render doc
Submitted by: Jeremias Maerki <[EMAIL PROTECTED]>
Revision Changes Path
No revision
No revision
1.36.2.1 +17 -14 xml-fop/src/org/apache/fop/apps/Driver.java
Index: Driver.java
===================================================================
RCS file: /home/cvs/xml-fop/src/org/apache/fop/apps/Driver.java,v
retrieving revision 1.36
retrieving revision 1.36.2.1
diff -u -r1.36 -r1.36.2.1
--- Driver.java 5 Oct 2001 09:49:21 -0000 1.36
+++ Driver.java 3 Jan 2002 10:39:56 -0000 1.36.2.1
@@ -1,5 +1,5 @@
/*
- * $Id: Driver.java,v 1.36 2001/10/05 09:49:21 keiron Exp $
+ * $Id: Driver.java,v 1.36.2.1 2002/01/03 10:39:56 keiron Exp $
* Copyright (C) 2001 The Apache Software Foundation. All rights reserved.
* For details on use and redistribution please refer to the
* LICENSE file included with these sources.
@@ -241,6 +241,19 @@
_treeBuilder.reset();
}
+ /**
+ * Returns the results of the last rendering process. Information includes
+ * the total number of pages generated and the number of pages per
+ * page-sequence.
+ */
+ public FormattingResults getResults() {
+ try {
+ return _treeBuilder.getStreamRenderer().getResults();
+ } catch (NullPointerException e) {
+ return null;
+ }
+ }
+
public boolean hasData() {
return (_treeBuilder.hasData());
}
@@ -483,19 +496,9 @@
*/
public synchronized void render(Document document)
throws FOPException {
-
- try {
- DocumentInputSource source = new DocumentInputSource(document);
- DocumentReader reader = new DocumentReader();
- reader.setContentHandler(getContentHandler());
- reader.parse(source);
- } catch (SAXException e) {
- throw new FOPException(e);
- }
- catch (IOException e) {
- throw new FOPException(e);
- }
-
+ DocumentInputSource source = new DocumentInputSource(document);
+ DocumentReader reader = new DocumentReader();
+ render(reader, source);
}
/**
1.6.2.1 +11 -0 xml-fop/src/org/apache/fop/apps/StreamRenderer.java
Index: StreamRenderer.java
===================================================================
RCS file: /home/cvs/xml-fop/src/org/apache/fop/apps/StreamRenderer.java,v
retrieving revision 1.6
retrieving revision 1.6.2.1
diff -u -r1.6 -r1.6.2.1
--- StreamRenderer.java 11 Sep 2001 10:04:24 -0000 1.6
+++ StreamRenderer.java 3 Jan 2002 10:39:56 -0000 1.6.2.1
@@ -66,6 +66,11 @@
private Renderer renderer;
/**
+ * The formatting results to be handed back to the caller.
+ */
+ private FormattingResults results = new FormattingResults();
+
+ /**
The FontInfo for this renderer.
*/
private FontInfo fontInfo = new FontInfo();
@@ -102,6 +107,10 @@
return idReferences;
}
+ public FormattingResults getResults() {
+ return this.results;
+ }
+
public void addExtension(ExtensionObj ext) {
extensions.addElement(ext);
}
@@ -192,6 +201,8 @@
} catch (FOPException e) {
throw new SAXException(e);
}
+ this.results.haveFormattedPageSequence(pageSequence);
+ log.debug("Last page-sequence produced "+pageSequence.getPageCount()+"
pages.");
}
public synchronized void queuePage(Page page)
No revision
No revision
1.1.2.1 +73 -0 xml-fop/src/org/apache/fop/apps/Attic/FormattingResults.java
1.1.2.1 +50 -0 xml-fop/src/org/apache/fop/apps/Attic/PageSequenceResults.java
No revision
No revision
1.30.2.1 +5 -1 xml-fop/src/org/apache/fop/fo/FOTreeBuilder.java
Index: FOTreeBuilder.java
===================================================================
RCS file: /home/cvs/xml-fop/src/org/apache/fop/fo/FOTreeBuilder.java,v
retrieving revision 1.30
retrieving revision 1.30.2.1
diff -u -r1.30 -r1.30.2.1
--- FOTreeBuilder.java 5 Oct 2001 10:17:55 -0000 1.30
+++ FOTreeBuilder.java 3 Jan 2002 10:39:56 -0000 1.30.2.1
@@ -1,5 +1,5 @@
/*
- * $Id: FOTreeBuilder.java,v 1.30 2001/10/05 10:17:55 keiron Exp $
+ * $Id: FOTreeBuilder.java,v 1.30.2.1 2002/01/03 10:39:56 keiron Exp $
* Copyright (C) 2001 The Apache Software Foundation. All rights reserved.
* For details on use and redistribution please refer to the
* LICENSE file included with these sources.
@@ -90,6 +90,10 @@
public void setStreamRenderer(StreamRenderer streamRenderer) {
this.streamRenderer = streamRenderer;
+ }
+
+ public StreamRenderer getStreamRenderer() {
+ return this.streamRenderer;
}
/**
No revision
No revision
1.39.2.2 +6 -2 xml-fop/src/org/apache/fop/fo/pagination/PageSequence.java
Index: PageSequence.java
===================================================================
RCS file: /home/cvs/xml-fop/src/org/apache/fop/fo/pagination/PageSequence.java,v
retrieving revision 1.39.2.1
retrieving revision 1.39.2.2
diff -u -r1.39.2.1 -r1.39.2.2
--- PageSequence.java 6 Dec 2001 21:28:21 -0000 1.39.2.1
+++ PageSequence.java 3 Jan 2002 10:39:56 -0000 1.39.2.2
@@ -1,5 +1,5 @@
/*
- * $Id: PageSequence.java,v 1.39.2.1 2001/12/06 21:28:21 tore Exp $
+ * $Id: PageSequence.java,v 1.39.2.2 2002/01/03 10:39:56 keiron Exp $
* Copyright (C) 2001 The Apache Software Foundation. All rights reserved.
* For details on use and redistribution please refer to the
* LICENSE file included with these sources.
@@ -613,7 +613,11 @@
}
public int getCurrentPageNumber() {
- return currentPageNumber;
+ return currentPageNumber;
+ }
+
+ public int getPageCount() {
+ return this.pageCount;
}
private void forcePage(AreaTree areaTree, int firstAvailPageNumber) {
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]