RE: font state and associates
On Wed, 2002-10-23 at 21:41, Victor Mote wrote: Keiron Liddle wrote (a long time ago, July 18 to be exact): Has anyone looked at the font state stuff. It appears we could make some changes to improve the way fonts are handled. - handle font information easily - handle font lists, resolving on a char basis - reduce number of FontState objects if information is the same (or similar?) - allow for serialization as part of area tree Do we need the FontInfo and FontMetric inside the FontState? Can we have a list of all font states so that it can be retrieved when needed for a particular layout of area? My refactoring work will eventually handle most of this. However, I do not understand item 2: handle font lists, resolving on a char basis. There are some lists in the FontInfo class now, which will end up as static fields in the new Typeface class (with Typeface instances behind them), and I will clean them up in the stage 2 work. The part I don't understand is the resolving on a char basis. What does this mean? Thanks. Those fonts in the font info class are the fonts available to the system from default + embedded fonts. I was refering to a list of fonts in the font-family attribute in the fo document. If I remember correctly it should keep the list of family names and lookup the character depending on the font-selection-strategy. If it is charactar-by-character then it will need to know if the font has that character in its range otherwise to try the next font family in the list. It needs to do this twice, for getting the char width and for resolving the mapping. This is only a rare case but it should be considered in the design. The serialization part in trunk is handled by using the string internal font name as a key. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]
Re: awt viewer issues
On Wed, 2002-10-23 at 16:35, Oleg Tkachenko wrote: If you could submit a patch that would be great. Ahem, against HEAD or maintenance branch? I say HEAD. For one thing it is possible to do the caching. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]
DO NOT REPLY [Bug 13919] New: - Font Refactor, phase 1, maintenance branch
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT http://nagoya.apache.org/bugzilla/show_bug.cgi?id=13919. ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND INSERTED IN THE BUG DATABASE. http://nagoya.apache.org/bugzilla/show_bug.cgi?id=13919 Font Refactor, phase 1, maintenance branch Summary: Font Refactor, phase 1, maintenance branch Product: Fop Version: 0.20.4 Platform: All OS/Version: All Status: NEW Severity: Enhancement Priority: Other Component: general AssignedTo: [EMAIL PROTECTED] ReportedBy: [EMAIL PROTECTED] The attached tar file contains 3 files, which should be loaded into src/org/apache/fop/fonts -- Font, Typeface, and TypefaceFamily. The attached .txt file contains patches for other files to use these new classes. The substance of this work is to move the layout/FontInfo instances to static information in these new classes. The new classes do not currently have instances of their own, but this should be added in future work. Please note: layout/FontInfo.java should be either removed or deprecated as part of this patch, depending on the project standards. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]
DO NOT REPLY [Bug 13919] - Font Refactor, phase 1, maintenance branch
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT http://nagoya.apache.org/bugzilla/show_bug.cgi?id=13919. ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND INSERTED IN THE BUG DATABASE. http://nagoya.apache.org/bugzilla/show_bug.cgi?id=13919 Font Refactor, phase 1, maintenance branch --- Additional Comments From [EMAIL PROTECTED] 2002-10-24 08:26 --- Created an attachment (id=3594) tar file containing new Font-related classes -- extract in src/org/apache/fop/fonts - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]
DO NOT REPLY [Bug 13919] - Font Refactor, phase 1, maintenance branch
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT http://nagoya.apache.org/bugzilla/show_bug.cgi?id=13919. ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND INSERTED IN THE BUG DATABASE. http://nagoya.apache.org/bugzilla/show_bug.cgi?id=13919 Font Refactor, phase 1, maintenance branch --- Additional Comments From [EMAIL PROTECTED] 2002-10-24 08:27 --- Created an attachment (id=3595) diffs for maintenance branch to use new font-related classes - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]
DO NOT REPLY [Bug 13919] - [Patch] Font Refactor, phase 1, maintenance branch
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT http://nagoya.apache.org/bugzilla/show_bug.cgi?id=13919. ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND INSERTED IN THE BUG DATABASE. http://nagoya.apache.org/bugzilla/show_bug.cgi?id=13919 [Patch] Font Refactor, phase 1, maintenance branch [EMAIL PROTECTED] changed: What|Removed |Added Summary|Font Refactor, phase 1, |[Patch] Font Refactor, phase |maintenance branch |1, maintenance branch --- Additional Comments From [EMAIL PROTECTED] 2002-10-24 08:31 --- Changing summary to include keyword [Patch] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]
Substitute or implementation of linefeed-treatment
Hello, sorry if I missed some discussions in case that this topic has already been addressed - but I haven't been listening to FOP list for some months. So to come to the point: I need to format a document and conserve the line breaks as they are delivered by the parser. So I added a linefeed-treatment=preserve to the fo:block but FOP complained that the linefeed-treatment is not supported up till now (I am running FOP 0.20.3)?! Is there an easy solution to my problem?! Any help is welcome. Regards Raimund PS.: I nearly don't want to ask - but is there anything new concerning the keep-with handling - as I said I have been away for some time??? -- DESY -MVP- Notkestrasse 85 D-22603 Hamburg Tel.: +49 40 8998 -4903 e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]
AW: storing metadata
Hi Paul, Do you want to embed the XSL:FO input in the PDF document? If this is so: o embedding files in PDF is the thing to do, but quite a challenge to build into the PDF renderer. o out of pure curiosity: why? Hansuli Anderegg - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]
Re: External Image error
Venkata Rao Nadella wrote: Exception in thread main java.lang.NoClassDefFoundError at sun.net.www.http.HttpClient.init(Unknown Source) at sun.net.www.http.HttpClient.init(Unknown Source) H, looks too bizarre, NoClassDefFoundError in the constructor of sun.net.www.http.HttpClient. Are you sure your java installation is ok? What is your java environment? fo:external-graphic src=http://www.cafeconleche.org/cup.gif/ That works fine for me. -- Oleg Tkachenko eXperanto team Multiconn Technologies, Israel - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]
DO NOT REPLY [Bug 13927] New: - Problem on WebSphere 4.0
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT http://nagoya.apache.org/bugzilla/show_bug.cgi?id=13927. ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND INSERTED IN THE BUG DATABASE. http://nagoya.apache.org/bugzilla/show_bug.cgi?id=13927 Problem on WebSphere 4.0 Summary: Problem on WebSphere 4.0 Product: Fop Version: 0.20.4 Platform: PC OS/Version: Windows NT/2K Status: NEW Severity: Major Priority: Other Component: general AssignedTo: [EMAIL PROTECTED] ReportedBy: [EMAIL PROTECTED] I use a servlet deployed on WebSphere 4.0 to generate a PDF. The XSL used to generate contains an image (a JPG file). The first time I call the servlet, the document seems to be generated correctly execpt for the image. I have the following Acrobat message when the PDF is displayed : L'image de Form, de type 3 ou de motif est trop grande and the image is not displayed. That the first problem. But when i call the servlet a second time and for all the next time, the PDF generated contains NOTHING Note : * The programm run perfectly on TOMCAT * In the log I found several line as following : illegal char value -17 illegal char value -30 * If I suppress the image in the XSL, it works fine - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]
RE: External Image error
Hi, I am able to fix this problem. My Java installation was not proper. Thanks, Venkat -Original Message- From: Oleg Tkachenko [mailto:olegt;multiconn.com] Sent: Thursday, October 24, 2002 7:52 AM To: [EMAIL PROTECTED] Subject: Re: External Image error Venkata Rao Nadella wrote: Exception in thread main java.lang.NoClassDefFoundError at sun.net.www.http.HttpClient.init(Unknown Source) at sun.net.www.http.HttpClient.init(Unknown Source) H, looks too bizarre, NoClassDefFoundError in the constructor of sun.net.www.http.HttpClient. Are you sure your java installation is ok? What is your java environment? fo:external-graphic src=http://www.cafeconleche.org/cup.gif/ That works fine for me. -- Oleg Tkachenko eXperanto team Multiconn Technologies, Israel - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]
cvs commit: xml-fop/src/org/apache/fop/datastructs Tree.java
pbwest 2002/10/24 07:16:53 Modified:src/org/apache/fop/datastructs Tag: FOP_0-20-0_Alt-Design Tree.java Log: Tabs detected! Untabified. Revision ChangesPath No revision No revision 1.1.2.2 +881 -881 xml-fop/src/org/apache/fop/datastructs/Attic/Tree.java Index: Tree.java === RCS file: /home/cvs/xml-fop/src/org/apache/fop/datastructs/Attic/Tree.java,v retrieving revision 1.1.2.1 retrieving revision 1.1.2.2 diff -u -r1.1.2.1 -r1.1.2.2 --- Tree.java 7 May 2002 04:37:53 - 1.1.2.1 +++ Tree.java 24 Oct 2002 14:16:53 - 1.1.2.2 @@ -63,48 +63,48 @@ public Tree() {} public int modified() { - // In the Tree class, this function updates the modCount - // N.B. This method is always called from within a synchronized - // method. - synchronized (this) { - return ++modCount; - } +// In the Tree class, this function updates the modCount +// N.B. This method is always called from within a synchronized +// method. +synchronized (this) { +return ++modCount; +} } public int getModCount() { - synchronized (this) { - return modCount; - } +synchronized (this) { +return modCount; +} } public boolean modCountEqualTo(int value) { - synchronized (this) { - return value == modCount; - } +synchronized (this) { +return value == modCount; +} } public int size() { - return nodeCount; +return nodeCount; } public boolean isEmpty() { - return nodeCount == 0; +return nodeCount == 0; } public Node getRoot() { - return root; +return root; } public void unsetRoot() { - root = null; +root = null; } public class TreeException extends Exception { - public TreeException(String message) { - super(message); - } - +public TreeException(String message) { +super(message); +} + } /** @@ -138,165 +138,165 @@ public class Node implements Cloneable { - private Node parent; - private ArrayList children; // ArrayList of Node +private Node parent; +private ArrayList children; // ArrayList of Node //protected Object content; - /** - * No argument constructor. - * - * Assumes that this node is the root, and so will throw a - * ttTreeException/tt when the root node in the enclosing - * ttTree/tt object is non-null. - */ - - public Node() - throws TreeException { - if (Tree.this.root != null) { - throw new TreeException( - No arg constructor invalid when root exists); - } - parent = null; - Tree.this.root = this; - children = new ArrayList(); +/** + * No argument constructor. + * + * Assumes that this node is the root, and so will throw a + * ttTreeException/tt when the root node in the enclosing + * ttTree/tt object is non-null. + */ + +public Node() +throws TreeException { +if (Tree.this.root != null) { +throw new TreeException( +No arg constructor invalid when root exists); +} +parent = null; +Tree.this.root = this; +children = new ArrayList(); //content = null; - } +} - /** - * @param parent Node which is the parent of this Node. if this is - * null, the generated Node is assumed to be the root - * node. If the Tree root node is already set, throws - * a ttTreeException/tt. - * @param index int index of child in parent. - */ - - public Node(Node parent, int index) - throws TreeException, IndexOutOfBoundsException { - children = new ArrayList(); +/** + * @param parent Node which is the parent of this Node. if this is + * null, the generated Node is assumed to be the root + * node. If the Tree root node is already set, throws + * a ttTreeException/tt. + * @param index int index of child in parent. + */ + +public Node(Node parent, int index) +throws TreeException, IndexOutOfBoundsException { +children = new
cvs commit: xml-fop/src/org/apache/fop/datastructs SyncedCircularBuffer.java
pbwest 2002/10/24 07:22:15 Modified:src/org/apache/fop/datastructs Tag: FOP_0-20-0_Alt-Design SyncedCircularBuffer.java Log: Added producerExhausted() and support. Revision ChangesPath No revision No revision 1.1.2.4 +30 -2 xml-fop/src/org/apache/fop/datastructs/Attic/SyncedCircularBuffer.java Index: SyncedCircularBuffer.java === RCS file: /home/cvs/xml-fop/src/org/apache/fop/datastructs/Attic/SyncedCircularBuffer.java,v retrieving revision 1.1.2.3 retrieving revision 1.1.2.4 diff -u -r1.1.2.3 -r1.1.2.4 --- SyncedCircularBuffer.java 19 Oct 2002 03:09:04 - 1.1.2.3 +++ SyncedCircularBuffer.java 24 Oct 2002 14:22:15 - 1.1.2.4 @@ -35,6 +35,7 @@ private int getptr = 0; private int putptr = 0; private boolean flush = false; +private boolean producerFinished = false; private Object pushBackBuf = null; /** @@ -101,6 +102,9 @@ if (Thread.interrupted()) { throw new InterruptedException(Consumer interrupted); } +if (producerFinished isEmpty()) { +throw new NoSuchElementException(Producer is finished.); +} if (pushBackBuf != null) { obj = pushBackBuf; pushBackBuf = null; @@ -109,6 +113,11 @@ while (isEmpty()) { // wait for the producer +// N.B. InterruptedException is propagated +// N.B. Because of synchronisation, producerFinished cannot +// become true while isEmpty() remains true, so just check for +// isEmpty(). In other circumstances, the +// InterruptedException will be propagated this.wait(); } @@ -141,6 +150,10 @@ throw new NoSuchElementException( SyncedCircularBuffer is full.); } +if (producerFinished) { +throw new RuntimeException( +SyncedCircularBuffer is finished.); +} if (Thread.interrupted()) { throw new InterruptedException(Producer interrupted); } @@ -153,6 +166,7 @@ notifyAll(); while (! isEmpty()) { // Wait for the consumer +// N.B. InterruptedException is propagated this.wait(); } flush = false; @@ -168,6 +182,20 @@ synchronized (this) { if (! isEmpty()) { flush = true; +notifyAll(); +} +} +} + +/** + * Notifies the consumer that the producer has terminated. + * The ttnotifyAll()/tt call allows for processing of the buffer before it fills. + */ +public void producerExhausted() { +synchronized (this) { +if (! isEmpty()) { +flush = true; +producerFinished = true; notifyAll(); } } - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: xml-fop/src/org/apache/fop/xml XMLEvent.java
pbwest 2002/10/24 07:34:31 Modified:src/org/apache/fop/xml Tag: FOP_0-20-0_Alt-Design XMLEvent.java Log: Added XMLEvent(int,String,XMLNamespaces) constructor. Revision ChangesPath No revision No revision 1.1.2.6 +11 -3 xml-fop/src/org/apache/fop/xml/Attic/XMLEvent.java Index: XMLEvent.java === RCS file: /home/cvs/xml-fop/src/org/apache/fop/xml/Attic/XMLEvent.java,v retrieving revision 1.1.2.5 retrieving revision 1.1.2.6 diff -u -r1.1.2.5 -r1.1.2.6 --- XMLEvent.java 19 Oct 2002 03:05:42 - 1.1.2.5 +++ XMLEvent.java 24 Oct 2002 14:34:31 - 1.1.2.6 @@ -107,6 +107,12 @@ namespaces = ev.namespaces; } +public XMLEvent(int type, String chars, XMLNamespaces namespaces) { +this.type = type; +this.chars = chars; +this.namespaces = namespaces; +} + public int getType() { return type; } public void setType(int type) { if (type MIN_XML_EV_TYPE || type MAX_XML_EV_TYPE) { @@ -117,9 +123,11 @@ } public String getChars() { return chars; } + public void setChars(String chars) { this.chars = chars; } + public void setChars(char[] ch, int start, int length) { chars = new String(ch, start, length); } - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: xml-fop/src/org/apache/fop/xml FoXMLEvent.java FoXMLSerialHandler.java SyncedFoXmlEventsBuffer.java SyncedXmlEventsBuffer.java XMLSerialHandler.java
pbwest 2002/10/24 07:39:11 Added: src/org/apache/fop/xml Tag: FOP_0-20-0_Alt-Design FoXMLEvent.java FoXMLSerialHandler.java SyncedFoXmlEventsBuffer.java Removed: src/org/apache/fop/xml Tag: FOP_0-20-0_Alt-Design SyncedXmlEventsBuffer.java XMLSerialHandler.java Log: Added support for FO type to FoXMLEvent and related classes. Revision ChangesPath No revision No revision 1.1.2.1 +91 -0 xml-fop/src/org/apache/fop/xml/Attic/FoXMLEvent.java 1.1.2.1 +209 -0xml-fop/src/org/apache/fop/xml/Attic/FoXMLSerialHandler.java 1.1.2.1 +975 -0 xml-fop/src/org/apache/fop/xml/Attic/SyncedFoXmlEventsBuffer.java - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: xml-fop/src/org/apache/fop/fo FONode.java FOTree.java
pbwest 2002/10/24 07:51:53 Modified:src/org/apache/fop/fo Tag: FOP_0-20-0_Alt-Design FONode.java FOTree.java Log: Changed XMLEvent to FoXMLEvent throughout. Revision ChangesPath No revision No revision 1.19.2.19 +7 -7 xml-fop/src/org/apache/fop/fo/FONode.java Index: FONode.java === RCS file: /home/cvs/xml-fop/src/org/apache/fop/fo/FONode.java,v retrieving revision 1.19.2.18 retrieving revision 1.19.2.19 diff -u -r1.19.2.18 -r1.19.2.19 --- FONode.java 21 Oct 2002 15:43:26 - 1.19.2.18 +++ FONode.java 24 Oct 2002 14:51:52 - 1.19.2.19 @@ -16,8 +16,8 @@ import org.apache.fop.datastructs.Tree; import org.apache.fop.datastructs.ROBitSet; import org.apache.fop.apps.FOPException; -import org.apache.fop.xml.XMLEvent; -import org.apache.fop.xml.SyncedXmlEventsBuffer; +import org.apache.fop.xml.FoXMLEvent; +import org.apache.fop.xml.SyncedFoXmlEventsBuffer; import org.apache.fop.xml.XMLNamespaces; import org.apache.fop.messaging.MessageHandler; @@ -55,9 +55,9 @@ /** The parent ttFONode/tt of this node. */ protected FONode parent; /** The ttXMLEvent/tt which triggered this node. */ -protected XMLEvent event; +protected FoXMLEvent event; /** The buffer from which parser events are drawn. */ -protected SyncedXmlEventsBuffer xmlevents; +protected SyncedFoXmlEventsBuffer xmlevents; /** The namespaces object associated with ixmlevents/i. */ protected XMLNamespaces namespaces; /** The FO type. */ @@ -101,7 +101,7 @@ * node */ public FONode -(FOTree foTree, int type, FONode parent, XMLEvent event, int attrSet) +(FOTree foTree, int type, FONode parent, FoXMLEvent event, int attrSet) throws Tree.TreeException, FOPException, PropertyException { foTree.super(parent); 1.1.2.20 +7 -7 xml-fop/src/org/apache/fop/fo/Attic/FOTree.java Index: FOTree.java === RCS file: /home/cvs/xml-fop/src/org/apache/fop/fo/Attic/FOTree.java,v retrieving revision 1.1.2.19 retrieving revision 1.1.2.20 diff -u -r1.1.2.19 -r1.1.2.20 --- FOTree.java 21 Oct 2002 15:45:30 - 1.1.2.19 +++ FOTree.java 24 Oct 2002 14:51:53 - 1.1.2.20 @@ -4,9 +4,9 @@ import org.apache.fop.datatypes.Ints; import org.apache.fop.datatypes.Numeric; import org.apache.fop.datatypes.PropertyValue; -import org.apache.fop.xml.XMLEvent; +import org.apache.fop.xml.FoXMLEvent; import org.apache.fop.xml.XMLNamespaces; -import org.apache.fop.xml.SyncedXmlEventsBuffer; +import org.apache.fop.xml.SyncedFoXmlEventsBuffer; import org.apache.fop.apps.Driver; import org.apache.fop.apps.FOPException; import org.apache.fop.configuration.Configuration; @@ -50,7 +50,7 @@ * The buffer from which the ttXMLEvent/tts from the parser will * be read. ttprotected/tt so that FONode can access it. */ -SyncedXmlEventsBuffer xmlevents; +SyncedFoXmlEventsBuffer xmlevents; private Thread parserThread; private boolean errorDump; @@ -65,7 +65,7 @@ * @param xmlevents the buffer from which ttXMLEvent/tts from the * parser are read. */ -public FOTree(SyncedXmlEventsBuffer xmlevents) +public FOTree(SyncedFoXmlEventsBuffer xmlevents) throws PropertyException { super(); @@ -112,7 +112,7 @@ */ public void run() { FoRoot foRoot; -XMLEvent event; +FoXMLEvent event; try { // Dummy only - check the language and country setup System.out.println((String)Configuration.getHashMapEntry - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: xml-fop/src/org/apache/fop/fo FoRoot.java
pbwest 2002/10/24 07:53:46 Modified:src/org/apache/fop/fo Tag: FOP_0-20-0_Alt-Design FoRoot.java Log: Changed XMLEvent to FoXMLEvent throughout. Account for the fact that 'expect' methods returning FoXMLEvents return null on failure. Revision ChangesPath No revision No revision 1.1.2.11 +18 -14xml-fop/src/org/apache/fop/fo/Attic/FoRoot.java Index: FoRoot.java === RCS file: /home/cvs/xml-fop/src/org/apache/fop/fo/Attic/FoRoot.java,v retrieving revision 1.1.2.10 retrieving revision 1.1.2.11 diff -u -r1.1.2.10 -r1.1.2.11 --- FoRoot.java 19 Oct 2002 03:49:04 - 1.1.2.10 +++ FoRoot.java 24 Oct 2002 14:53:46 - 1.1.2.11 @@ -18,9 +18,10 @@ import org.apache.fop.fo.FONode; import org.apache.fop.fo.expr.PropertyException; import org.apache.fop.fo.pagination.FoLayoutMasterSet; +import org.apache.fop.xml.FoXMLEvent; import org.apache.fop.xml.XMLEvent; import org.apache.fop.xml.XMLNamespaces; -import org.apache.fop.xml.SyncedXmlEventsBuffer; +import org.apache.fop.xml.SyncedFoXmlEventsBuffer; import org.xml.sax.Attributes; @@ -44,11 +45,11 @@ /** * @param foTree the FO tree being built - * @param event the ttXMLEvent/tt that triggered the creation of this + * @param event the ttFoXMLEvent/tt that triggered the creation of this * node */ public FoRoot -(FOTree foTree, XMLEvent event) +(FOTree foTree, FoXMLEvent event) throws Tree.TreeException, FOPException, PropertyException { // This is the root node of the tree; hence the null argument @@ -80,7 +81,7 @@ * in the page-sequence-sequence. */ public void buildFoTree() throws FOPException{ -XMLEvent ev; +FoXMLEvent ev; System.out.println(buildFoTree: + event); // Look for layout-master-set try { @@ -88,7 +89,7 @@ (XMLNamespaces.XSLNSpaceIndex, layout-master-set, XMLEvent.DISCARD_W_SPACE); } catch (NoSuchElementException e) { -throw new FOPException(e); +throw new FOPException(buildFoTree: Unexpected EOF in layout-master-set.); } // Process the layout-master-set try { @@ -100,15 +101,18 @@ } // Look for optional declarations try { -xmlevents.expectStartElement +ev = xmlevents.expectStartElement (XMLNamespaces.XSLNSpaceIndex, declarations, XMLEvent.DISCARD_W_SPACE); -// process the declarations -xmlevents.getEndElement -(XMLNamespaces.XSLNSpaceIndex, declarations); +if (ev != null) { +// process the declarations +xmlevents.getEndElement +(XMLNamespaces.XSLNSpaceIndex, declarations); +} } catch (NoSuchElementException e) { -// Take no notice - declarations is optional +throw new FOPException +(Unexpected EOF while processing declarations.); } - + } } - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: xml-fop/src/org/apache/fop/fo/pagination FoLayoutMasterSet.java FoPageSequenceMaster.java FoSimplePageMaster.java
pbwest 2002/10/24 07:58:14 Modified:src/org/apache/fop/fo/pagination Tag: FOP_0-20-0_Alt-Design FoLayoutMasterSet.java FoPageSequenceMaster.java FoSimplePageMaster.java Log: Changed XMLEvent to FoXMLEvent throughout. Account for the fact that 'expect' methods returning FoXMLEvents return null on failure. Revision ChangesPath No revision No revision 1.1.2.10 +13 -8 xml-fop/src/org/apache/fop/fo/pagination/Attic/FoLayoutMasterSet.java Index: FoLayoutMasterSet.java === RCS file: /home/cvs/xml-fop/src/org/apache/fop/fo/pagination/Attic/FoLayoutMasterSet.java,v retrieving revision 1.1.2.9 retrieving revision 1.1.2.10 diff -u -r1.1.2.9 -r1.1.2.10 --- FoLayoutMasterSet.java21 Oct 2002 16:12:53 - 1.1.2.9 +++ FoLayoutMasterSet.java24 Oct 2002 14:58:14 - 1.1.2.10 @@ -12,10 +12,11 @@ import org.apache.fop.fo.FOTree; import org.apache.fop.fo.FONode; import org.apache.fop.fo.expr.PropertyException; +import org.apache.fop.xml.FoXMLEvent; import org.apache.fop.xml.XMLEvent; import org.apache.fop.xml.UriLocalName; import org.apache.fop.xml.XMLNamespaces; -import org.apache.fop.xml.SyncedXmlEventsBuffer; +import org.apache.fop.xml.SyncedFoXmlEventsBuffer; import org.apache.fop.datastructs.Tree; import org.apache.fop.fo.pagination.FoPageSequenceMaster; import org.apache.fop.fo.pagination.PageSequenceMaster; @@ -78,7 +79,7 @@ * this node */ public FoLayoutMasterSet -(FOTree foTree, FONode parent, XMLEvent event) +(FOTree foTree, FONode parent, FoXMLEvent event) throws Tree.TreeException, FOPException, PropertyException { super(foTree, FObjectNames.LAYOUT_MASTER_SET, parent, event, @@ -93,7 +94,7 @@ * @param event - the layout page-master-set STARTELEMENT event. * @throws ttFOPException/tt. */ -public void setupPageMasters(XMLEvent event) +public void setupPageMasters(FoXMLEvent event) throws FOPException, PropertyException { FoSimplePageMaster simple; @@ -102,9 +103,10 @@ FoPageSequenceMaster foPageSeq; try { do { -XMLEvent ev = +FoXMLEvent ev = xmlevents.expectStartElement (simpleOrSequenceMaster, XMLEvent.DISCARD_W_SPACE); +if (ev == null) break; // No instance of these elements found localName = ev.getLocalName(); if (localName.equals(simple-page-master)) { //System.out.println(Found simple-page-master); @@ -145,7 +147,8 @@ (Aargh! expectStartElement(events, list)); } while (true); } catch (NoSuchElementException e) { -// Masters exhausted +// Unexpected end of file +throw new FOPException(layout-master-set: unexpected EOF.); } catch (PropertyException e) { throw new FOPException(e); @@ -153,6 +156,8 @@ catch (Tree.TreeException e) { throw new FOPException(e); } +if (pageMasters.size() == 0) +throw new FOPException(No pageg masters defined in layout-master-set.); // Create the master set structures. // Scan the page-sequence-masters // N.B. Processing of the page-sequence-masters must be deferred until 1.1.2.10 +21 -15 xml-fop/src/org/apache/fop/fo/pagination/Attic/FoPageSequenceMaster.java Index: FoPageSequenceMaster.java === RCS file: /home/cvs/xml-fop/src/org/apache/fop/fo/pagination/Attic/FoPageSequenceMaster.java,v retrieving revision 1.1.2.9 retrieving revision 1.1.2.10 diff -u -r1.1.2.9 -r1.1.2.10 --- FoPageSequenceMaster.java 21 Oct 2002 16:12:54 - 1.1.2.9 +++ FoPageSequenceMaster.java 24 Oct 2002 14:58:14 - 1.1.2.10 @@ -15,6 +15,7 @@ // FOP import org.apache.fop.fo.FOAttributes; +import org.apache.fop.xml.FoXMLEvent; import org.apache.fop.xml.XMLEvent; import org.apache.fop.xml.XMLNamespaces; import org.apache.fop.xml.UriLocalName; @@ -68,7 +69,7 @@ //private ArrayList subSequenceList = new ArrayList(1); -public FoPageSequenceMaster(FOTree foTree, FONode parent, XMLEvent event) +public FoPageSequenceMaster(FOTree foTree, FONode parent, FoXMLEvent event) throws Tree.TreeException, FOPException, PropertyException { super(foTree, FObjectNames.PAGE_SEQUENCE_MASTER, parent, event, @@ -76,8 +77,9 @@ // Process sequence members here try { do { -
cvs commit: xml-fop/src/org/apache/fop/apps Driver.java
pbwest 2002/10/24 08:00:29 Modified:src/org/apache/fop/apps Tag: FOP_0-20-0_Alt-Design Driver.java Log: Used SyncedXmlEventsBuffer and FoXMLSerialHandler. Revision ChangesPath No revision No revision 1.31.2.3 +8 -7 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.31.2.2 retrieving revision 1.31.2.3 diff -u -r1.31.2.2 -r1.31.2.3 --- Driver.java 18 Sep 2002 05:18:06 - 1.31.2.2 +++ Driver.java 24 Oct 2002 15:00:29 - 1.31.2.3 @@ -10,8 +10,8 @@ // FOP import org.apache.fop.fo.FOTree; import org.apache.fop.layout.AreaTree; -import org.apache.fop.xml.XMLSerialHandler; -import org.apache.fop.xml.SyncedXmlEventsBuffer; +import org.apache.fop.xml.FoXMLSerialHandler; +import org.apache.fop.xml.SyncedFoXmlEventsBuffer; import org.apache.fop.configuration.Configuration; import org.apache.fop.messaging.MessageHandler; import org.apache.fop.fo.PropertyConsts; @@ -38,8 +38,8 @@ private XMLReader parser; private InputSource source; -private XMLSerialHandler xmlhandler; -private SyncedXmlEventsBuffer xmlevents; +private FoXMLSerialHandler xmlhandler; +private SyncedFoXmlEventsBuffer xmlevents; private FOTree foTree; private AreaTree areaTree = new AreaTree(); @@ -69,8 +69,8 @@ source = inputHandler.getInputSource(); setParserFeatures(parser); -xmlevents = new SyncedXmlEventsBuffer(); -xmlhandler = new XMLSerialHandler(xmlevents, parser, source); +xmlevents = new SyncedFoXmlEventsBuffer(); +xmlhandler = new FoXMLSerialHandler(xmlevents, parser, source); foTree = new FOTree(xmlevents); driverThread = Thread.currentThread(); @@ -90,6 +90,7 @@ try { parserThread.join(); } catch (InterruptedException e) {} +//System.out.println(Joined to parser.); try { foThread.join(); } catch (InterruptedException e) {} - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: [PATCH QUEUE] Was: Performance tuning.
Venu Reddy wrote: What is the current status of this performance tuning. By mimicking the URL on the Cocoon web site, I have created a URL to show the [PATCH] Queue for FOP, and it is in the attached one-line text file. I'll try to get it into the doc web site stuff after the, er, patch queue gets flushed out. This should help answer questions such as this in the future. To answer Venu's question directly -- I just looked through the posting on this list don't see a patch submission in either standard (Bugzilla) or non-standard form. Victor Mote http://nagoya.apache.org/bugzilla/buglist.cgi?bug_status=NEWbug_status=ASSIGNEDbug_status=REOPENEDemail1=emailtype1=substringemailassigned_to1=1email2=emailtype2=substringemailreporter2=1bugidtype=includebug_id=changedin=votes=chfieldfrom=chfieldto=Nowchfieldvalue=product=Fopshort_desc=%5BPATCH%5Dshort_desc_type=allwordssubstrlong_desc=long_desc_type=allwordssubstrbug_file_loc=bug_file_loc_type=allwordssubstrkeywords=keywords_type=anywordsfield0-0-0=nooptype0-0-0=noopvalue0-0-0=namedcmd=Fop+allnewqueryname=fop+patch+queuetofooter=1order=Reuse+same+sort+as+last+time - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]
Re: Performance tuning.
Hello dear Venu, Am Donnerstag, 24. Oktober 2002 20:28 schrieb Venu Reddy: Hi, What is the current status of this performance tuning. Have the code changes been submitted and performance benefits verified. I really could use some speed improvements with fop, I have some very large reports 400/500 pages that are taking 5+ minutes to run. I don't know wether you already discussed this: If you create indices, tocs and other page references, you might want to create them seperately and instead run fop several times on the same document (often fop is run repeatedly anyway), do it the way TeX does it. This might also speed up things a little. Anyway, I create student guides for courses here, they also tend to be big, the same size as your docs. Usually it takes about 30-90 seconds to fop them or less (Laptop, Athlon XP 1600+). Bye -- ITCQIS GmbH Christian Wolfgang Hujer Geschäftsführender Gesellschafter Telefon:+49 (0)89 27 37 04 37 Telefax:+49 (0)89 27 37 04 39 E-Mail:[EMAIL PROTECTED] WWW: http://www.itcqis.com/ - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]
RE: Performance tuning.
Hi, What is the current status of this performance tuning. Have the code changes been submitted and performance benefits verified. I really could use some speed improvements with fop, I have some very large reports 400/500 pages that are taking 5+ minutes to run. Thanks, Venu Reddy P.S: I am willing to apply the code changes to my version of fop(0.20.4), test it and submit the results on my large fo files. -Original Message- From: Martin Poeschl [mailto:mpoeschl;marmot.at] Sent: Thursday, October 17, 2002 11:48 PM To: [EMAIL PROTECTED] Subject: Re: Performance tuning. Henrik Olsson wrote: Hi. I have runned several performance tests on the FOP and and I have found out several bottle necks (especially in the PropertyListBuilder). Most things is about reducing gc and some others about not so well written code. The result of this tunings gives me a speed of 3 time faster than the original FOP. WOW!!! So what do I do to get the code in to the fop-project (the problems are both in the fop 0.20.4 and in the DEV 1.0). I have also figured out some more thing but they are not so general but it makes the FOP as fast as a comersial tool written in C++ (StreamServe). could you make your patched version available somewhere??? if you don't have a server, just send it to my private mail and i'll put it in my home_dir at the apache server ;-) martin Henrik. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]
Re: Latest FO schema
Chuck, I have stripped the tabs from all of the files in docs/foschema and committed them. I committed a stripped version of fop4f.xsd as fop4.xsd, then updated fop4.xsd with the changes in fop4g.xsd. So the current version of fop4.xsd is the stripped version of fop4g.xsd. The intention of that is to apply future changes directly. Have a look and let me know if anything needs fixing. Peter -- Peter B. West [EMAIL PROTECTED] http://www.powerup.com.au/~pbwest/ Lord, to whom shall we go? - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]
RE: Fix for bug #8778
My mistake on the source, however I believe what I said about the TLM is correct. I created tests with constant logging of the object references involved and had the TLM also report how far into its text placement it was getting. The cases for bug #8778 indicated to me that the TLM, under the right conditions, would indeed be repeatedly called and would repeatedly try to add the same area. The condition in the test that causes this is when the TLM cannot place its text on a page and requests a break so it can layout on a fresh page, but the next page doesn't offer any more space. I do have a means of showing this, I believe. -Original Message- From: Keiron Liddle [mailto:keiron;aftexsw.com] Sent: Wednesday, October 23, 2002 2:46 AM To: FOP Subject: Re: Fix for bug #8778 On Tue, 2002-09-24 at 16:42, Rhett Aultman wrote: Foppers, I've implemented some code in the TextLayoutManager that keeps an eye on the TLM's lack of progress in laying out its content and that, after 100 repeated attempts with no progress, gives up the ghost, assuming that, after 100 tries with no progress, chances are good that it's going to never progress (causing an infinite loop). I've run this against the tests and it doesn't seem to have any adverse behavior. It also properly bails out of the testcases for bug #8778. However, since exception throwing is currently not permitted in the LayoutManager interface, the TLM gives up by throwing a RuntimeException, which I don't have to specify in a throws clause. Before I offer the patch, I thought I'd ask those with more seniority than me- would a checked exception be preferred? I can make the necessary changes, but it'd change a LOT more code (since there'd been a need for try/catch blocks and the like all over the place), and this patch is to fix up an infrequent condition on a branch of code we're not going to progress down much further. Comments? I'm a bit confused, the TextLayoutManager is only in HEAD. It does have a couple of proplems at the moment with wide areas and whitespace handling at the end. However the code should be selecting a correct break only once and there should never be a situation where keeps trying to add the same areas. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]
cvs commit: xml-fop/docs/foschema fop4.xsd
pbwest 2002/10/24 08:23:57 Modified:docs/foschema fop4.xsd Log: Updated with fop4g.xsd, with TABs replaced by spaces at tabstops of 2. Revision ChangesPath 1.2 +14 -10xml-fop/docs/foschema/fop4.xsd Index: fop4.xsd === RCS file: /home/cvs/xml-fop/docs/foschema/fop4.xsd,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- fop4.xsd 24 Oct 2002 15:21:41 - 1.1 +++ fop4.xsd 24 Oct 2002 15:23:56 - 1.2 @@ -81,6 +81,10 @@ This declaration assumes that all fo:color-profile/ elements must come before other stuff, which is not required by spec, but I cannot see any way to express such constraints in schema, one could use xs:choice/ instead of xs:sequence/, but this way we lose control over (color-profile)+ constraint. + + VCP 21-Oct-2002 +Updated all (px|pt|mm|cm|in|em) to (px|pt|mm|cm|in|em|%) to allow percentage types. +Updated the restriction base of those types from NMTOKEN to string /documentation /annotation @@ -785,8 +789,8 @@ enumeration value = 1em/ /documentation /annotation -restriction base = NMTOKEN - pattern value = [+-]?\d+\.?\d*(px|pt|mm|cm|in|em)/ +restriction base = string + pattern value = [+-]?\d+\.?\d*(px|pt|mm|cm|in|em|%)/ /restriction /simpleType simpleType name = length_range_Type @@ -831,7 +835,7 @@ /documentation /annotation restriction base = string - pattern value = \+?\d+\.?\d*(px|pt|mm|cm|in|em) (retain|discard)/ + pattern value = \+?\d+\.?\d*(px|pt|mm|cm|in|em|%) (retain|discard)/ /restriction /simpleType xs:simpleType name = length_bp_ip_direction_Type @@ -865,7 +869,7 @@ /documentation /annotation restriction base = string - pattern value = ([ ]?\+?\d+\.?\d*(px|pt|mm|cm|in|em)){1,3}( \+?\d+| force)?( retain| discard)?/ + pattern value = ([ ]?\+?\d+\.?\d*(px|pt|mm|cm|in|em|%)){1,3}( \+?\d+| force)?( retain| discard)?/ /restriction /simpleType simpleType name = angle_Type @@ -1051,7 +1055,7 @@ length_Type{1,2} /documentation /annotation - pattern value = (rect\((\+?\d+\.?\d*(px|pt|mm|cm|in|em)|auto),(\+?\d+\.?\d*(px|pt|mm|cm|in|em)|auto),(\+?\d+\.?\d*(px|pt|mm|cm|in|em)|auto),(\+?\d+\.?\d*(px|pt|mm|cm|in|em)|auto)\)|auto|inherit)/ + pattern value = (rect\((\+?\d+\.?\d*(px|pt|mm|cm|in|em|%)|auto),(\+?\d+\.?\d*(px|pt|mm|cm|in|em|%)|auto),(\+?\d+\.?\d*(px|pt|mm|cm|in|em|%)|auto),(\+?\d+\.?\d*(px|pt|mm|cm|in|em|%)|auto)\)|auto|inherit)/ /restriction /simpleType @@ -1734,13 +1738,13 @@ /restriction /simpleType simpleType name = positive_length_Type -restriction base = NMTOKEN - pattern value = \+?\d+\.?\d*(px|pt|mm|cm|in|em)/ +restriction base = string + pattern value = \+?\d+\.?\d*(px|pt|mm|cm|in|em|%)/ /restriction /simpleType simpleType name = negative_length_Type -restriction base = NMTOKEN - pattern value = -\d+\.?\d*(px|pt|mm|cm|in|em)/ +restriction base = string + pattern value = -\d+\.?\d*(px|pt|mm|cm|in|em|%)/ /restriction /simpleType simpleType name = integer_Force_Type @@ -2917,7 +2921,7 @@ /documentation /annotation restriction base = string - pattern value = (none|hidden|dotted|dashed|solid|double|groove|ridge|inset|outset) \+?\d+\.?\d*(px|pt|mm|cm|in|em) (#[0-9A-F]{6}|[a-z]{3,16})/ + pattern value = (none|hidden|dotted|dashed|solid|double|groove|ridge|inset|outset) \+?\d+\.?\d*(px|pt|mm|cm|in|em|%) (#[0-9A-F]{6}|[a-z]{3,16})/ /restriction /simpleType simpleType name = font_size_Type - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
cvs commit: xml-fop/docs/foschema schema2dtd.xsl schema2completion.xsl
pbwest 2002/10/24 08:19:35 Modified:docs/foschema schema2dtd.xsl schema2completion.xsl Log: Stripped TABs using tabstops of 2. Revision ChangesPath 1.2 +239 -239 xml-fop/docs/foschema/schema2dtd.xsl Index: schema2dtd.xsl === RCS file: /home/cvs/xml-fop/docs/foschema/schema2dtd.xsl,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- schema2dtd.xsl22 Jul 2002 10:23:26 - 1.1 +++ schema2dtd.xsl24 Oct 2002 15:19:35 - 1.2 @@ -1,15 +1,15 @@ ?xml version=1.0? xsl:stylesheet saxon:trace=no - version=1.1 - xmlns:xsl=http://www.w3.org/1999/XSL/Transform; - xmlns:saxon=http://icl.com/saxon; - xmlns:xs = http://www.w3.org/2001/XMLSchema; - xmlns:fo=http://www.w3.org/1999/XSL/Format; - xmlns:date=http://exslt.org/dates-and-times; - xmlns:math=http://exslt.org/math; - extension-element-prefixes=saxon date math - exclude-result-prefixes=fo +version=1.1 +xmlns:xsl=http://www.w3.org/1999/XSL/Transform; +xmlns:saxon=http://icl.com/saxon; +xmlns:xs = http://www.w3.org/2001/XMLSchema; +xmlns:fo=http://www.w3.org/1999/XSL/Format; +xmlns:date=http://exslt.org/dates-and-times; +xmlns:math=http://exslt.org/math; +extension-element-prefixes=saxon date math +exclude-result-prefixes=fo xsl:output method=xml version=1.0 omit-xml-declaration=no indent=yes/ xsl:strip-space elements=*/ @@ -45,275 +45,275 @@ /xsl:textxsl:comment Entity definitions for groups of formatting objects /xsl:commentxsl:text /xsl:textxsl:comment *** /xsl:commentxsl:text /xsl:text - xsl:apply-templates select=./xs:simpleType/ + xsl:apply-templates select=./xs:simpleType/ xsl:text /xsl:textxsl:comment *** /xsl:commentxsl:text /xsl:textxsl:comment Attribute Groups /xsl:commentxsl:text /xsl:textxsl:comment *** /xsl:comment - xsl:apply-templates select=./xs:attributeGroup/ + xsl:apply-templates select=./xs:attributeGroup/ xsl:text /xsl:textxsl:comment *** /xsl:commentxsl:text /xsl:textxsl:comment Element Groups /xsl:commentxsl:text /xsl:textxsl:comment *** /xsl:commentxsl:text /xsl:text - xsl:apply-templates select=./xs:group/ + xsl:apply-templates select=./xs:group/ xsl:text /xsl:textxsl:comment *** /xsl:commentxsl:text /xsl:textxsl:comment Elements /xsl:commentxsl:text /xsl:textxsl:comment *** /xsl:commentxsl:text /xsl:text - xsl:apply-templates select=./xs:element/ + xsl:apply-templates select=./xs:element/ /xsl:template xsl:template match=xs:group - xsl:text disable-output-escaping=yes + xsl:text disable-output-escaping=yes lt;!ENTITY % /xsl:textxsl:value-of select=./@name/xsl:text /xsl:text - xsl:for-each select=./xs:choice/xs:element - xsl:text - /xsl:text - xsl:value-of select=./@ref/ - xsl:if test=position() != last() - xsl:text |/xsl:text - /xsl:if - /xsl:for-each - xsl:if test=./xs:choice/xs:group - xsl:variable name=ref1 - xsl:call-template name=strip_fo - xsl:with-param name=ref select=./xs:choice/xs:group[1]/@ref/ - /xsl:call-template - /xsl:variable - xsl:variable name=ref2 - xsl:call-template name=strip_fo - xsl:with-param name=ref select=./xs:choice/xs:group[2]/@ref/ - /xsl:call-template - /xsl:variable - xsl:text - %/xsl:text - xsl:value-of select=$ref1/ - xsl:text;/xsl:text - xsl:if test=(/xs:schema/xs:group[@name = $ref1]/xs:choice/xs:element) and (/xs:schema/xs:group[@name = $ref2]/xs:choice/xs:element) - xsl:text| /xsl:text - /xsl:if - xsl:text - %/xsl:text - xsl:value-of select=$ref2/xsl:text;/xsl:text - /xsl:if - xsl:text disable-output-escaping=yes + xsl:for-each select=./xs:choice/xs:element +xsl:text + /xsl:text +
Re: Substitute or implementation of linefeed-treatment
Raimund Kammering wrote: So to come to the point: I need to format a document and conserve the line breaks as they are delivered by the parser. So I added a linefeed-treatment=preserve to the fo:block but FOP complained that the linefeed-treatment is not supported up till now (I am running FOP 0.20.3)?! Try white-space-collapse=false, which also preserves runs of white space. If this isn't desirable, replace your line feed characters with the line separator character U+2028, in XSLT translate($string,#xA,#x2028) PS.: I nearly don't want to ask - but is there anything new concerning the keep-with handling - as I said I have been away for some time??? Just search the archive. J.Pietschmann - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]
Re: mirroring, web pages, and disk space
Greg Stein wrote: I believe Brian also asked the XML folks to lighten up their web pages, since the combination size of pages/images are expensive compared to the other Apache sites. In Forrest we already have made a Forrest version of the XML website http://xml.apache.org/forrest/xml-site/index.html We can push it to the front quite quickly, what do others think? As for the projects... Cocoon will be doable soon, FOP is almost ready IIUC, and Xindice is already working on it. Which all means I guess that we'll have to speed up the transition of the sites. So, to organize this a bit, who is in charge of managing the docs of other xml projects please let us (Forrest devs) know what the current situation is, or on [EMAIL PROTECTED] or directly on our list. The docs format is not that far away from the original xml.apache format, and the docs build process doesn't need anymore to be in the ant buildfile, as forrest is now a tool that can be used from a single installation as Ant. We will actively help you with the transition to Forrest docs in the smallest time possible. -- Nicola Ken Barozzi [EMAIL PROTECTED] - verba volant, scripta manent - (discussions get forgotten, just code remains) - - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]