xmlgraphics-fop-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ian Corne <ian.corne...@gmail.com>
Subject Re: FOP crashes when encountering character 00AD (soft hyphen)
Date Fri, 21 Oct 2011 08:52:57 GMT
Mehdi,

>From wikipedia:
According to the Unicode <http://en.wikipedia.org/wiki/Unicode> standard, a
soft hyphen is not displayed if the line is not broken at that point.

I'm not too familiar with fop's interpretation of the unicode standard, but
it could be that the line's not broken?

Regards

Ian

ps: Is there a fop irc channel? :)


On Fri, Oct 21, 2011 at 9:56 AM, mehdi houshmand <med1985@gmail.com> wrote:

> Curiously however, the soft-hyphen doesn't appear in the output
> document. I'll try and investigate further, someone else may already
> know the reason why.
>
> Mehdi
>
> On 21 October 2011 08:44, mehdi houshmand <med1985@gmail.com> wrote:
> > Hi Paul,
> >
> > I just ran the FO you attached and I am getting the same error message
> > as you are with FOP 1.0, however, FOP trunk doesn't produce this
> > issue, it might be worth trying that.
> >
> > Hope that helps
> > Mehdi
> >
> > On 21 October 2011 03:49, Paul Tremblay <paulhtremblay@gmail.com> wrote:
> >> Fop crashes when processing a file with a SOFT HYPHEN character, 00AD. I
> am
> >> running FOP 1.0.
> >>
> >> My java is:
> >>
> >> java version "1.6.0_26"
> >> Java(TM) SE Runtime Environment (build 1.6.0_26-b03-383-11A511)
> >> Java HotSpot(TM) 64-Bit Server VM (build 20.1-b02-383, mixed mode)
> >>
> >> The fo file is:
> >>
> >> <?xml version="1.0" encoding="UTF-8"?>
> >> <fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
> >> <fo:layout-master-set>
> >> <fo:simple-page-master master-name="simple-page" margin-left="1.0in"
> >> margin-right="1.0in" margin-top="1.0in" margin-bottom="1.0in"
> >> page-width="8.5in" page-height="11in">
> >> <fo:region-body />
> >> </fo:simple-page-master>
> >> </fo:layout-master-set>
> >> <fo:page-sequence master-reference="simple-page" format="1"
> >> initial-page-number="1">
> >> <fo:flow flow-name="xsl-region-body">
> >> <fo:block>Below is the block that contains the character (00AD)
> >> (soft-hyphen) causes the crash</fo:block>
> >> <fo:block >&#x00AD;­</fo:block>
> >> </fo:flow>
> >> </fo:page-sequence>
> >> </fo:root>
> >>
> >> The error message is:
> >>
> >> Oct 20, 2011 9:38:01 PM org.apache.fop.cli.Main startFOP
> >> SEVERE: Exception
> >> java.lang.IllegalArgumentException: factor < 0; was: -1
> >>    at org.apache.fop.cli.InputHandler.transformTo(InputHandler.java:302)
> >>    at org.apache.fop.cli.InputHandler.renderTo(InputHandler.java:130)
> >>    at org.apache.fop.cli.Main.startFOP(Main.java:174)
> >>    at org.apache.fop.cli.Main.main(Main.java:205)
> >> Caused by: java.lang.IllegalArgumentException: factor < 0; was: -1
> >>    at org.apache.fop.traits.MinOptMax.mult(MinOptMax.java:251)
> >>    at
> >>
> org.apache.fop.layoutmgr.inline.TextLayoutManager.processWord(TextLayoutManager.java:825)
> >>    at
> >>
> org.apache.fop.layoutmgr.inline.TextLayoutManager.getNextKnuthElements(TextLayoutManager.java:710)
> >>    at
> >>
> org.apache.fop.layoutmgr.inline.LineLayoutManager.collectInlineKnuthElements(LineLayoutManager.java:639)
> >>    at
> >>
> org.apache.fop.layoutmgr.inline.LineLayoutManager.getNextKnuthElements(LineLayoutManager.java:579)
> >>    at
> >>
> org.apache.fop.layoutmgr.BlockStackingLayoutManager.getNextChildElements(BlockStackingLayoutManager.java:571)
> >>    at
> >>
> org.apache.fop.layoutmgr.BlockStackingLayoutManager.getNextChildElements(BlockStackingLayoutManager.java:552)
> >>    at
> >>
> org.apache.fop.layoutmgr.BlockStackingLayoutManager.getNextKnuthElements(BlockStackingLayoutManager.java:280)
> >>    at
> >>
> org.apache.fop.layoutmgr.BlockLayoutManager.getNextKnuthElements(BlockLayoutManager.java:123)
> >>    at
> >>
> org.apache.fop.layoutmgr.BlockLayoutManager.getNextKnuthElements(BlockLayoutManager.java:115)
> >>    at
> >>
> org.apache.fop.layoutmgr.FlowLayoutManager.getNextChildElements(FlowLayoutManager.java:199)
> >>    at
> >>
> org.apache.fop.layoutmgr.FlowLayoutManager.addChildElements(FlowLayoutManager.java:140)
> >>    at
> >>
> org.apache.fop.layoutmgr.FlowLayoutManager.addChildElements(FlowLayoutManager.java:129)
> >>    at
> >>
> org.apache.fop.layoutmgr.FlowLayoutManager.getNextKnuthElements(FlowLayoutManager.java:70)
> >>    at
> >>
> org.apache.fop.layoutmgr.PageBreaker.getNextKnuthElements(PageBreaker.java:216)
> >>    at
> >>
> org.apache.fop.layoutmgr.AbstractBreaker.getNextBlockList(AbstractBreaker.java:692)
> >>    at
> >>
> org.apache.fop.layoutmgr.PageBreaker.getNextBlockList(PageBreaker.java:149)
> >>    at
> >>
> org.apache.fop.layoutmgr.PageBreaker.getNextBlockList(PageBreaker.java:132)
> >>    at
> >>
> org.apache.fop.layoutmgr.AbstractBreaker.doLayout(AbstractBreaker.java:337)
> >>    at org.apache.fop.layoutmgr.PageBreaker.doLayout(PageBreaker.java:85)
> >>    at
> >>
> org.apache.fop.layoutmgr.PageSequenceLayoutManager.activateLayout(PageSequenceLayoutManager.java:107)
> >>    at
> >>
> org.apache.fop.area.AreaTreeHandler.endPageSequence(AreaTreeHandler.java:238)
> >>    at
> >>
> org.apache.fop.fo.pagination.PageSequence.endOfNode(PageSequence.java:120)
> >>    at
> >>
> org.apache.fop.fo.FOTreeBuilder$MainFOHandler.endElement(FOTreeBuilder.java:349)
> >>    at org.apache.fop.fo.FOTreeBuilder.endElement(FOTreeBuilder.java:177)
> >>    at
> >>
> org.apache.xalan.transformer.TransformerIdentityImpl.endElement(TransformerIdentityImpl.java:1101)
> >>    at org.apache.xerces.parsers.AbstractSAXParser.endElement(Unknown
> Source)
> >>    at org.apache.xerces.xinclude.XIncludeHandler.endElement(Unknown
> Source)
> >>    at
> org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanEndElement(Unknown
> >> Source)
> >>    at
> >>
> org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown
> >> Source)
> >>    at
> >>
> org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown
> >> Source)
> >>    at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
> >>    at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
> >>    at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
> >>    at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
> >>    at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown
> >> Source)
> >>    at
> >>
> org.apache.xalan.transformer.TransformerIdentityImpl.transform(TransformerIdentityImpl.java:484)
> >>    at org.apache.fop.cli.InputHandler.transformTo(InputHandler.java:299)
> >>    ... 3 more
> >>
> >> ---------
> >>
> >> java.lang.IllegalArgumentException: factor < 0; was: -1
> >>    at org.apache.fop.traits.MinOptMax.mult(MinOptMax.java:251)
> >>    at
> >>
> org.apache.fop.layoutmgr.inline.TextLayoutManager.processWord(TextLayoutManager.java:825)
> >>    at
> >>
> org.apache.fop.layoutmgr.inline.TextLayoutManager.getNextKnuthElements(TextLayoutManager.java:710)
> >>    at
> >>
> org.apache.fop.layoutmgr.inline.LineLayoutManager.collectInlineKnuthElements(LineLayoutManager.java:639)
> >>    at
> >>
> org.apache.fop.layoutmgr.inline.LineLayoutManager.getNextKnuthElements(LineLayoutManager.java:579)
> >>    at
> >>
> org.apache.fop.layoutmgr.BlockStackingLayoutManager.getNextChildElements(BlockStackingLayoutManager.java:571)
> >>    at
> >>
> org.apache.fop.layoutmgr.BlockStackingLayoutManager.getNextChildElements(BlockStackingLayoutManager.java:552)
> >>    at
> >>
> org.apache.fop.layoutmgr.BlockStackingLayoutManager.getNextKnuthElements(BlockStackingLayoutManager.java:280)
> >>    at
> >>
> org.apache.fop.layoutmgr.BlockLayoutManager.getNextKnuthElements(BlockLayoutManager.java:123)
> >>    at
> >>
> org.apache.fop.layoutmgr.BlockLayoutManager.getNextKnuthElements(BlockLayoutManager.java:115)
> >>    at
> >>
> org.apache.fop.layoutmgr.FlowLayoutManager.getNextChildElements(FlowLayoutManager.java:199)
> >>    at
> >>
> org.apache.fop.layoutmgr.FlowLayoutManager.addChildElements(FlowLayoutManager.java:140)
> >>    at
> >>
> org.apache.fop.layoutmgr.FlowLayoutManager.addChildElements(FlowLayoutManager.java:129)
> >>    at
> >>
> org.apache.fop.layoutmgr.FlowLayoutManager.getNextKnuthElements(FlowLayoutManager.java:70)
> >>    at
> >>
> org.apache.fop.layoutmgr.PageBreaker.getNextKnuthElements(PageBreaker.java:216)
> >>    at
> >>
> org.apache.fop.layoutmgr.AbstractBreaker.getNextBlockList(AbstractBreaker.java:692)
> >>    at
> >>
> org.apache.fop.layoutmgr.PageBreaker.getNextBlockList(PageBreaker.java:149)
> >>    at
> >>
> org.apache.fop.layoutmgr.PageBreaker.getNextBlockList(PageBreaker.java:132)
> >>    at
> >>
> org.apache.fop.layoutmgr.AbstractBreaker.doLayout(AbstractBreaker.java:337)
> >>    at org.apache.fop.layoutmgr.PageBreaker.doLayout(PageBreaker.java:85)
> >>    at
> >>
> org.apache.fop.layoutmgr.PageSequenceLayoutManager.activateLayout(PageSequenceLayoutManager.java:107)
> >>    at
> >>
> org.apache.fop.area.AreaTreeHandler.endPageSequence(AreaTreeHandler.java:238)
> >>    at
> >>
> org.apache.fop.fo.pagination.PageSequence.endOfNode(PageSequence.java:120)
> >>    at
> >>
> org.apache.fop.fo.FOTreeBuilder$MainFOHandler.endElement(FOTreeBuilder.java:349)
> >>    at org.apache.fop.fo.FOTreeBuilder.endElement(FOTreeBuilder.java:177)
> >>    at
> >>
> org.apache.xalan.transformer.TransformerIdentityImpl.endElement(TransformerIdentityImpl.java:1101)
> >>    at org.apache.xerces.parsers.AbstractSAXParser.endElement(Unknown
> Source)
> >>    at org.apache.xerces.xinclude.XIncludeHandler.endElement(Unknown
> Source)
> >>    at
> org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanEndElement(Unknown
> >> Source)
> >>    at
> >>
> org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown
> >> Source)
> >>    at
> >>
> org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown
> >> Source)
> >>    at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
> >>    at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
> >>    at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
> >>    at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
> >>    at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown
> >> Source)
> >>    at
> >>
> org.apache.xalan.transformer.TransformerIdentityImpl.transform(TransformerIdentityImpl.java:484)
> >>    at org.apache.fop.cli.InputHandler.transformTo(InputHandler.java:299)
> >>    at org.apache.fop.cli.InputHandler.renderTo(InputHandler.java:130)
> >>    at org.apache.fop.cli.Main.startFOP(Main.java:174)
> >>    at org.apache.fop.cli.Main.main(Main.java:205)
> >>
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: fop-users-unsubscribe@xmlgraphics.apache.org
> >> For additional commands, e-mail: fop-users-help@xmlgraphics.apache.org
> >>
> >>
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: fop-users-unsubscribe@xmlgraphics.apache.org
> For additional commands, e-mail: fop-users-help@xmlgraphics.apache.org
>
>

Mime
View raw message