gmazza 2003/11/01 15:08:51
Modified: . build.xml
src/java/org/apache/fop/apps Driver.java
Added: src/java/org/apache/fop/render/mif MIFElement.java
MIFFile.java MIFHandler.java PGFElement.java
RefElement.java RulingElement.java
Removed: src/java/org/apache/fop/mif MIFElement.java MIFFile.java
MIFHandler.java PGFElement.java RefElement.java
RulingElement.java
Log:
Moved mif package (including structural renderer MIFHandler.java) to
render.mif.
Revision Changes Path
1.90 +1 -1 xml-fop/build.xml
Index: build.xml
===================================================================
RCS file: /home/cvs/xml-fop/build.xml,v
retrieving revision 1.89
retrieving revision 1.90
diff -u -r1.89 -r1.90
--- build.xml 21 Sep 2003 20:56:23 -0000 1.89
+++ build.xml 1 Nov 2003 23:08:51 -0000 1.90
@@ -768,10 +768,10 @@
</group>
<group title="Structural Rendering">
<package name="org.apache.fop.rtf.renderer"/>
+ <package name="org.apache.fop.render.mif"/>
</group>
<group title="Utility">
<package name="org.apache.fop.pdf"/>
- <package name="org.apache.fop.mif"/>
<package name="org.apache.fop.tools"/>
<package name="org.apache.fop.tools.*"/>
<package name="org.apache.fop.svg"/>
1.43 +1 -1 xml-fop/src/java/org/apache/fop/apps/Driver.java
Index: Driver.java
===================================================================
RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/apps/Driver.java,v
retrieving revision 1.42
retrieving revision 1.43
diff -u -r1.42 -r1.43
--- Driver.java 6 Oct 2003 16:38:48 -0000 1.42
+++ Driver.java 1 Nov 2003 23:08:51 -0000 1.43
@@ -59,7 +59,7 @@
import org.apache.fop.fo.FOInputHandler;
import org.apache.fop.fo.FOTreeHandler;
-import org.apache.fop.mif.MIFHandler;
+import org.apache.fop.render.mif.MIFHandler;
import org.apache.fop.render.Renderer;
import org.apache.fop.render.awt.AWTRenderer;
import org.apache.fop.rtf.renderer.RTFHandler;
1.1 xml-fop/src/java/org/apache/fop/render/mif/MIFElement.java
Index: MIFElement.java
===================================================================
/*
* $Id: MIFElement.java,v 1.1 2003/11/01 23:08:51 gmazza Exp $
* ============================================================================
* The Apache Software License, Version 1.1
* ============================================================================
*
* Copyright (C) 1999-2003 The Apache Software Foundation. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modifica-
* tion, are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* 3. The end-user documentation included with the redistribution, if any, must
* include the following acknowledgment: "This product includes software
* developed by the Apache Software Foundation (http://www.apache.org/)."
* Alternately, this acknowledgment may appear in the software itself, if
* and wherever such third-party acknowledgments normally appear.
*
* 4. The names "FOP" and "Apache Software Foundation" must not be used to
* endorse or promote products derived from this software without prior
* written permission. For written permission, please contact
* [EMAIL PROTECTED]
*
* 5. Products derived from this software may not be called "Apache", nor may
* "Apache" appear in their name, without prior written permission of the
* Apache Software Foundation.
*
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES,
* INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
* FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
* APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
* INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU-
* DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
* ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
* ============================================================================
*
* This software consists of voluntary contributions made by many individuals
* on behalf of the Apache Software Foundation and was originally created by
* James Tauber <[EMAIL PROTECTED]>. For more information on the Apache
* Software Foundation, please see <http://www.apache.org/>.
*/
package org.apache.fop.render.mif;
// Java
import java.io.IOException;
import java.io.OutputStream;
import java.util.Iterator;
import java.util.List;
/**
* The is the basis for MIF document elements.
* This enables the creation of the element and to write it
* to an output stream including sub-elements or a single value.
*/
public class MIFElement {
protected String name;
protected String valueStr = null;
protected List valueElements = null;
protected boolean started = false;
protected boolean finish = false;
protected boolean finished = false;
/**
*/
public MIFElement(String n) {
name = n;
}
public void setValue(String str) {
valueStr = str;
}
public void addElement(MIFElement el) {
if (valueElements == null) {
valueElements = new java.util.ArrayList();
}
valueElements.add(el);
}
/**
* Output this element to an output stream.
* This will output only so far as the fisrt unfinished child element.
* This method can be called again to continue from the previous point.
* An element that contains child elements will only be finished when
* the finish method is called.
*/
public boolean output(OutputStream os, int indent) throws IOException {
if (finished) {
return true;
}
if (valueElements == null && valueStr == null) {
return false;
}
String indentStr = "";
for (int c = 0; c < indent; c++) {
indentStr += " ";
}
if (!started) {
os.write((indentStr + "<" + name).getBytes());
if (valueElements != null) {
os.write(("\n").getBytes());
}
started = true;
}
if (valueElements != null) {
boolean done = true;
for (Iterator iter = valueElements.iterator(); iter.hasNext();) {
MIFElement el = (MIFElement)iter.next();
boolean d = el.output(os, indent + 1);
if (d) {
iter.remove();
} else {
done = false;
break;
}
}
if (!finish || !done) {
return false;
}
os.write((indentStr + "> # end of " + name + "\n").getBytes());
} else {
os.write((" " + valueStr + ">\n").getBytes());
}
finished = true;
return true;
}
public void finish(boolean deep) {
finish = true;
if (deep && valueElements != null) {
for (Iterator iter = valueElements.iterator(); iter.hasNext();) {
MIFElement el = (MIFElement)iter.next();
el.finish(deep);
}
}
}
}
1.1 xml-fop/src/java/org/apache/fop/render/mif/MIFFile.java
Index: MIFFile.java
===================================================================
/*
* $Id: MIFFile.java,v 1.1 2003/11/01 23:08:51 gmazza Exp $
* ============================================================================
* The Apache Software License, Version 1.1
* ============================================================================
*
* Copyright (C) 1999-2003 The Apache Software Foundation. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modifica-
* tion, are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* 3. The end-user documentation included with the redistribution, if any, must
* include the following acknowledgment: "This product includes software
* developed by the Apache Software Foundation (http://www.apache.org/)."
* Alternately, this acknowledgment may appear in the software itself, if
* and wherever such third-party acknowledgments normally appear.
*
* 4. The names "FOP" and "Apache Software Foundation" must not be used to
* endorse or promote products derived from this software without prior
* written permission. For written permission, please contact
* [EMAIL PROTECTED]
*
* 5. Products derived from this software may not be called "Apache", nor may
* "Apache" appear in their name, without prior written permission of the
* Apache Software Foundation.
*
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES,
* INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
* FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
* APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
* INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU-
* DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
* ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
* ============================================================================
*
* This software consists of voluntary contributions made by many individuals
* on behalf of the Apache Software Foundation and was originally created by
* James Tauber <[EMAIL PROTECTED]>. For more information on the Apache
* Software Foundation, please see <http://www.apache.org/>.
*/
package org.apache.fop.render.mif;
// Java
import java.io.IOException;
import java.io.OutputStream;
import java.util.Iterator;
import java.util.List;
/**
* The MIF File.
* This organises the MIF File and the corresponding elements.
* The catalog elements are used to setup the resources that
* are referenced.
*/
public class MIFFile extends MIFElement {
protected MIFElement colorCatalog = null;
protected PGFElement pgfCatalog = null;
protected MIFElement fontCatalog = null;
protected RulingElement rulingCatalog = null;
protected MIFElement tblCatalog = null;
protected MIFElement views = null;
protected MIFElement variableFormats = null;
protected MIFElement xRefFormats = null;
protected MIFElement document = null;
protected MIFElement bookComponent = null;
protected MIFElement initialAutoNums = null;
protected MIFElement aFrames = null;
protected MIFElement tbls = null;
protected List pages = new java.util.ArrayList();
protected List textFlows = null;
public MIFFile() {
super("");
valueElements = new java.util.ArrayList();
setup();
}
/**
* Do some setup.
* Currently adds some dummy values to the resources.
*/
protected void setup() {
MIFElement unit = new MIFElement("Units");
unit.setValue("Ucm");
addElement(unit);
colorCatalog = new MIFElement("ColorCatalog");
MIFElement color = new MIFElement("Color");
MIFElement prop = new MIFElement("ColorTag");
prop.setValue("`Black'");
color.addElement(prop);
prop = new MIFElement("ColorCyan");
prop.setValue("0.000000");
color.addElement(prop);
prop = new MIFElement("ColorMagenta");
prop.setValue("0.000000");
color.addElement(prop);
prop = new MIFElement("ColorYellow");
prop.setValue("0.000000");
color.addElement(prop);
prop = new MIFElement("ColorBlack");
prop.setValue("100.000000");
color.addElement(prop);
prop = new MIFElement("ColorAttribute");
prop.setValue("ColorIsBlack");
color.addElement(prop);
prop = new MIFElement("ColorAttribute");
prop.setValue("ColorIsReserved");
color.addElement(prop);
color.finish(true);
colorCatalog.addElement(color);
addElement(colorCatalog);
pgfCatalog = new PGFElement();
pgfCatalog.lookupElement(null);
addElement(pgfCatalog);
rulingCatalog = new RulingElement();
rulingCatalog.lookupElement(null);
addElement(rulingCatalog);
}
public void output(OutputStream os) throws IOException {
if (finished) {
return;
}
if (!started) {
os.write(("<MIFFile 5.00> # Generated by FOP\n"/* +
getVersion()*/).getBytes());
started = true;
}
boolean done = true;
for (Iterator iter = valueElements.iterator(); iter.hasNext();) {
MIFElement el = (MIFElement)iter.next();
boolean d = el.output(os, 0);
if (d) {
iter.remove();
} else {
done = false;
break;
}
}
if (done && finish) {
os.write(("# end of MIFFile").getBytes());
}
}
public void addPage(MIFElement p) {
pages.add(p);
addElement(p);
}
}
1.1 xml-fop/src/java/org/apache/fop/render/mif/MIFHandler.java
Index: MIFHandler.java
===================================================================
/*
* $Id: MIFHandler.java,v 1.1 2003/11/01 23:08:51 gmazza Exp $
* ============================================================================
* The Apache Software License, Version 1.1
* ============================================================================
*
* Copyright (C) 1999-2003 The Apache Software Foundation. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modifica-
* tion, are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* 3. The end-user documentation included with the redistribution, if any, must
* include the following acknowledgment: "This product includes software
* developed by the Apache Software Foundation (http://www.apache.org/)."
* Alternately, this acknowledgment may appear in the software itself, if
* and wherever such third-party acknowledgments normally appear.
*
* 4. The names "FOP" and "Apache Software Foundation" must not be used to
* endorse or promote products derived from this software without prior
* written permission. For written permission, please contact
* [EMAIL PROTECTED]
*
* 5. Products derived from this software may not be called "Apache", nor may
* "Apache" appear in their name, without prior written permission of the
* Apache Software Foundation.
*
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES,
* INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
* FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
* APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
* INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU-
* DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
* ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
* ============================================================================
*
* This software consists of voluntary contributions made by many individuals
* on behalf of the Apache Software Foundation and was originally created by
* James Tauber <[EMAIL PROTECTED]>. For more information on the Apache
* Software Foundation, please see <http://www.apache.org/>.
*/
package org.apache.fop.render.mif;
// Java
import java.io.IOException;
import java.io.OutputStream;
import org.apache.fop.apps.Document;
import org.apache.fop.apps.FOPException;
import org.apache.fop.fo.FOInputHandler;
import org.apache.fop.fo.flow.Block;
import org.apache.fop.fo.flow.ExternalGraphic;
import org.apache.fop.fo.flow.InstreamForeignObject;
import org.apache.fop.fo.flow.Inline;
import org.apache.fop.fo.flow.Leader;
import org.apache.fop.fo.flow.ListBlock;
import org.apache.fop.fo.flow.ListItem;
import org.apache.fop.fo.flow.PageNumber;
import org.apache.fop.fo.flow.Table;
import org.apache.fop.fo.flow.TableBody;
import org.apache.fop.fo.flow.TableCell;
import org.apache.fop.fo.flow.TableColumn;
import org.apache.fop.fo.flow.TableRow;
import org.apache.fop.fo.pagination.Flow;
import org.apache.fop.fo.pagination.PageSequence;
import org.apache.fop.fo.pagination.PageSequenceMaster;
import org.apache.fop.fo.pagination.SimplePageMaster;
import org.xml.sax.SAXException;
// TODO: do we really want every method throwing a SAXException
/**
* The MIF Handler.
* This generates MIF output using the structure events from
* the FO Tree sent to this structure handler.
* This builds an MIF file and writes it to the output.
*/
public class MIFHandler extends FOInputHandler {
/** the MIFFile instance */
protected MIFFile mifFile;
/** the OutputStream to write to */
protected OutputStream outStream;
// current state elements
private MIFElement textFlow;
private MIFElement para;
/**
* Creates a new MIF handler on a given OutputStream.
* @param os OutputStream to write to
*/
public MIFHandler(Document doc, OutputStream os) {
super(doc);
outStream = os;
// use pdf fonts for now, this is only for resolving names
org.apache.fop.render.pdf.FontSetup.setup(doc, null);
}
/**
* @see org.apache.fop.fo.FOInputHandler#startDocument()
*/
public void startDocument() throws SAXException {
mifFile = new MIFFile();
try {
mifFile.output(outStream);
} catch (IOException ioe) {
throw new SAXException(ioe);
}
}
/**
* @see org.apache.fop.fo.FOInputHandler#endDocument()
*/
public void endDocument() throws SAXException {
// finish all open elements
mifFile.finish(true);
try {
mifFile.output(outStream);
outStream.flush();
} catch (IOException ioe) {
throw new SAXException(ioe);
}
}
/**
* Start the page sequence.
* This creates the pages in the MIF document that will be used
* by the following flows and static areas.
* @see org.apache.fop.fo.FOInputHandler
*/
public void startPageSequence(PageSequence pageSeq) {
// get the layout master set
// setup the pages for this sequence
String name = pageSeq.getProperty("master-reference").getString();
SimplePageMaster spm =
pageSeq.getLayoutMasterSet().getSimplePageMaster(name);
if (spm == null) {
PageSequenceMaster psm =
pageSeq.getLayoutMasterSet().getPageSequenceMaster(name);
} else {
// create simple master with regions
MIFElement prop = new MIFElement("PageType");
prop.setValue("BodyPage");
MIFElement page = new MIFElement("Page");
page.addElement(prop);
prop = new MIFElement("PageBackground");
prop.setValue("'Default'");
page.addElement(prop);
// build regions
MIFElement textRect = new MIFElement("TextRect");
prop = new MIFElement("ID");
prop.setValue("1");
textRect.addElement(prop);
prop = new MIFElement("ShapeRect");
prop.setValue("0.0 841.889 453.543 0.0");
textRect.addElement(prop);
page.addElement(textRect);
textRect = new MIFElement("TextRect");
prop = new MIFElement("ID");
prop.setValue("2");
textRect.addElement(prop);
prop = new MIFElement("ShapeRect");
prop.setValue("0.0 841.889 453.543 187.65");
textRect.addElement(prop);
page.addElement(textRect);
mifFile.addPage(page);
}
}
/**
* @see org.apache.fop.fo.FOInputHandler#endPageSequence(PageSequence)
*/
public void endPageSequence(PageSequence pageSeq) throws FOPException {
}
/**
* @see org.apache.fop.fo.FOInputHandler#startFlow(Flow)
*/
public void startFlow(Flow fl) {
// start text flow in body region
textFlow = new MIFElement("TextFlow");
}
/**
* @see org.apache.fop.fo.FOInputHandler#endFlow(Flow)
*/
public void endFlow(Flow fl) {
textFlow.finish(true);
mifFile.addElement(textFlow);
textFlow = null;
}
/**
* @see org.apache.fop.fo.FOInputHandler#startBlock(Block)
*/
public void startBlock(Block bl) {
para = new MIFElement("Para");
// get font
textFlow.addElement(para);
}
/**
* @see org.apache.fop.fo.FOInputHandler#endBlock(Block)
*/
public void endBlock(Block bl) {
para.finish(true);
para = null;
}
/**
*
* @param inl Inline that is starting.
*/
public void startInline(Inline inl){
}
/**
*
* @param inl Inline that is ending.
*/
public void endInline(Inline inl){
}
/**
* @see org.apache.fop.fo.FOInputHandler#startTable(Table)
*/
public void startTable(Table tbl) {
}
/**
* @see org.apache.fop.fo.FOInputHandler#endTable(Table)
*/
public void endTable(Table tbl) {
}
/**
*
* @param tc TableColumn that is starting;
*/
public void startColumn(TableColumn tc) {
}
/**
*
* @param tc TableColumn that is ending;
*/
public void endColumn(TableColumn tc) {
}
/**
* @see org.apache.fop.fo.FOInputHandler#startHeader(TableBody)
*/
public void startHeader(TableBody th) {
}
/**
* @see org.apache.fop.fo.FOInputHandler#endHeader(TableBody)
*/
public void endHeader(TableBody th) {
}
/**
* @see org.apache.fop.fo.FOInputHandler#startFooter(TableBody)
*/
public void startFooter(TableBody tf) {
}
/**
* @see org.apache.fop.fo.FOInputHandler#endFooter(TableBody)
*/
public void endFooter(TableBody tf) {
}
/**
* @see org.apache.fop.fo.FOInputHandler#startBody(TableBody)
*/
public void startBody(TableBody tb) {
}
/**
* @see org.apache.fop.fo.FOInputHandler#endBody(TableBody)
*/
public void endBody(TableBody tb) {
}
/**
* @see org.apache.fop.fo.FOInputHandler#startRow(TableRow)
*/
public void startRow(TableRow tr) {
}
/**
* @see org.apache.fop.fo.FOInputHandler#endRow(TableRow)
*/
public void endRow(TableRow tr) {
}
/**
* @see org.apache.fop.fo.FOInputHandler#startCell(TableCell)
*/
public void startCell(TableCell tc) {
}
/**
* @see org.apache.fop.fo.FOInputHandler#endCell(TableCell)
*/
public void endCell(TableCell tc) {
}
// Lists
/**
* @see org.apache.fop.fo.FOInputHandler#startList(ListBlock)
*/
public void startList(ListBlock lb) {
}
/**
* @see org.apache.fop.fo.FOInputHandler#endList(ListBlock)
*/
public void endList(ListBlock lb) {
}
/**
* @see org.apache.fop.fo.FOInputHandler#startListItem(ListItem)
*/
public void startListItem(ListItem li) {
}
/**
* @see org.apache.fop.fo.FOInputHandler#endListItem(ListItem)
*/
public void endListItem(ListItem li) {
}
/**
* @see org.apache.fop.fo.FOInputHandler#startListLabel()
*/
public void startListLabel() {
}
/**
* @see org.apache.fop.fo.FOInputHandler#endListLabel()
*/
public void endListLabel() {
}
/**
* @see org.apache.fop.fo.FOInputHandler#startListBody()
*/
public void startListBody() {
}
/**
* @see org.apache.fop.fo.FOInputHandler#endListBody()
*/
public void endListBody() {
}
// Static Regions
/**
* @see org.apache.fop.fo.FOInputHandler#startStatic()
*/
public void startStatic() {
}
/**
* @see org.apache.fop.fo.FOInputHandler#endStatic()
*/
public void endStatic() {
}
/**
* @see org.apache.fop.fo.FOInputHandler#startMarkup()
*/
public void startMarkup() {
}
/**
* @see org.apache.fop.fo.FOInputHandler#endMarkup()
*/
public void endMarkup() {
}
/**
* @see org.apache.fop.fo.FOInputHandler#startLink()
*/
public void startLink() {
}
/**
* @see org.apache.fop.fo.FOInputHandler#endLink()
*/
public void endLink() {
}
/**
* @see org.apache.fop.fo.FOInputHandler#image(ExternalGraphic)
*/
public void image(ExternalGraphic eg) {
}
/**
* @see org.apache.fop.fo.FOInputHandler#pageRef()
*/
public void pageRef() {
}
/**
* @see org.apache.fop.fo.FOInputHandler#foreignObject(InstreamForeignObject)
*/
public void foreignObject(InstreamForeignObject ifo) {
}
/**
* @see org.apache.fop.fo.FOInputHandler#footnote()
*/
public void footnote() {
}
/**
* @see org.apache.fop.fo.FOInputHandler#leader(Leader)
*/
public void leader(Leader l) {
}
/**
* @see org.apache.fop.fo.FOInputHandler#characters(char[], int, int)
*/
public void characters(char data[], int start, int length) {
if (para != null) {
String str = new String(data, start, length);
str = str.trim();
// break into nice length chunks
if (str.length() == 0) {
return;
}
MIFElement line = new MIFElement("ParaLine");
MIFElement prop = new MIFElement("TextRectID");
prop.setValue("2");
line.addElement(prop);
prop = new MIFElement("String");
prop.setValue("\"" + str + "\"");
line.addElement(prop);
para.addElement(line);
}
}
/**
*
* @param pagenum PageNumber that is starting.
*/
public void startPageNumber(PageNumber pagenum) {
}
/**
*
* @param pagenum PageNumber that is ending.
*/
public void endPageNumber(PageNumber pagenum) {
}
}
1.1 xml-fop/src/java/org/apache/fop/render/mif/PGFElement.java
Index: PGFElement.java
===================================================================
/*
* $Id: PGFElement.java,v 1.1 2003/11/01 23:08:51 gmazza Exp $
* ============================================================================
* The Apache Software License, Version 1.1
* ============================================================================
*
* Copyright (C) 1999-2003 The Apache Software Foundation. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modifica-
* tion, are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* 3. The end-user documentation included with the redistribution, if any, must
* include the following acknowledgment: "This product includes software
* developed by the Apache Software Foundation (http://www.apache.org/)."
* Alternately, this acknowledgment may appear in the software itself, if
* and wherever such third-party acknowledgments normally appear.
*
* 4. The names "FOP" and "Apache Software Foundation" must not be used to
* endorse or promote products derived from this software without prior
* written permission. For written permission, please contact
* [EMAIL PROTECTED]
*
* 5. Products derived from this software may not be called "Apache", nor may
* "Apache" appear in their name, without prior written permission of the
* Apache Software Foundation.
*
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES,
* INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
* FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
* APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
* INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU-
* DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
* ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
* ============================================================================
*
* This software consists of voluntary contributions made by many individuals
* on behalf of the Apache Software Foundation and was originally created by
* James Tauber <[EMAIL PROTECTED]>. For more information on the Apache
* Software Foundation, please see <http://www.apache.org/>.
*/
package org.apache.fop.render.mif;
/**
* Font Catalog element.
* This is the reference lookup element for fonts in
* the MIF document.
*/
public class PGFElement extends RefElement {
/**
* Creates a new font catalog element.
*/
public PGFElement() {
super("PgfCatalog");
}
public MIFElement lookupElement(Object key) {
if (key == null) {
MIFElement pgf = new MIFElement("Pgf");
MIFElement prop = new MIFElement("PgfTag");
prop.setValue("`Body'");
pgf.addElement(prop);
addElement(pgf);
pgf.finish(true);
return pgf;
}
return null;
}
}
1.1 xml-fop/src/java/org/apache/fop/render/mif/RefElement.java
Index: RefElement.java
===================================================================
/*
* $Id: RefElement.java,v 1.1 2003/11/01 23:08:51 gmazza Exp $
* ============================================================================
* The Apache Software License, Version 1.1
* ============================================================================
*
* Copyright (C) 1999-2003 The Apache Software Foundation. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modifica-
* tion, are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* 3. The end-user documentation included with the redistribution, if any, must
* include the following acknowledgment: "This product includes software
* developed by the Apache Software Foundation (http://www.apache.org/)."
* Alternately, this acknowledgment may appear in the software itself, if
* and wherever such third-party acknowledgments normally appear.
*
* 4. The names "FOP" and "Apache Software Foundation" must not be used to
* endorse or promote products derived from this software without prior
* written permission. For written permission, please contact
* [EMAIL PROTECTED]
*
* 5. Products derived from this software may not be called "Apache", nor may
* "Apache" appear in their name, without prior written permission of the
* Apache Software Foundation.
*
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES,
* INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
* FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
* APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
* INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU-
* DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
* ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
* ============================================================================
*
* This software consists of voluntary contributions made by many individuals
* on behalf of the Apache Software Foundation and was originally created by
* James Tauber <[EMAIL PROTECTED]>. For more information on the Apache
* Software Foundation, please see <http://www.apache.org/>.
*/
package org.apache.fop.render.mif;
/**
* Reference MIF Element.
* This element is a lookup reference set that contains
* a list of resources used in the MIF Document.
* When a lookup is performed it will either create a new
* element or return an existing element that is valid.
* THe key depends on the type of reference, it should be able
* to uniquely identify the element.
*/
public class RefElement extends MIFElement {
/**
* @see org.apache.fop.mif.MIFElement#MIFElement(String)
*/
public RefElement(String n) {
super(n);
}
public MIFElement lookupElement(Object key) {
return null;
}
}
1.1 xml-fop/src/java/org/apache/fop/render/mif/RulingElement.java
Index: RulingElement.java
===================================================================
/*
* $Id: RulingElement.java,v 1.1 2003/11/01 23:08:51 gmazza Exp $
* ============================================================================
* The Apache Software License, Version 1.1
* ============================================================================
*
* Copyright (C) 1999-2003 The Apache Software Foundation. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modifica-
* tion, are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* 3. The end-user documentation included with the redistribution, if any, must
* include the following acknowledgment: "This product includes software
* developed by the Apache Software Foundation (http://www.apache.org/)."
* Alternately, this acknowledgment may appear in the software itself, if
* and wherever such third-party acknowledgments normally appear.
*
* 4. The names "FOP" and "Apache Software Foundation" must not be used to
* endorse or promote products derived from this software without prior
* written permission. For written permission, please contact
* [EMAIL PROTECTED]
*
* 5. Products derived from this software may not be called "Apache", nor may
* "Apache" appear in their name, without prior written permission of the
* Apache Software Foundation.
*
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES,
* INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
* FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
* APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
* INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU-
* DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
* ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
* ============================================================================
*
* This software consists of voluntary contributions made by many individuals
* on behalf of the Apache Software Foundation and was originally created by
* James Tauber <[EMAIL PROTECTED]>. For more information on the Apache
* Software Foundation, please see <http://www.apache.org/>.
*/
package org.apache.fop.render.mif;
public class RulingElement extends RefElement {
public RulingElement() {
super("RulingCatalog");
}
public MIFElement lookupElement(Object key) {
if (key == null) {
MIFElement rul = new MIFElement("Ruling");
MIFElement prop = new MIFElement("RulingTag");
prop.setValue("`Default'");
rul.addElement(prop);
prop = new MIFElement("RulingPenWidth");
prop.setValue("1");
rul.addElement(prop);
prop = new MIFElement("RulingPen");
prop.setValue("0");
rul.addElement(prop);
prop = new MIFElement("RulingLines");
prop.setValue("1");
rul.addElement(prop);
addElement(rul);
rul.finish(true);
return rul;
}
return null;
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]