You are viewing a plain text version of this content. The canonical link for it is here.
Posted to batik-dev@xmlgraphics.apache.org by "wzw9258 (JIRA)" <ji...@apache.org> on 2015/04/29 07:33:06 UTC

[jira] [Updated] (BATIK-1117) SVG Text label does not display or garbled

     [ https://issues.apache.org/jira/browse/BATIK-1117?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

wzw9258 updated BATIK-1117:
---------------------------
    Summary: SVG Text label does not display or garbled  (was: SVG Text标签不显示或显示乱码)

> SVG Text label does not display or garbled
> ------------------------------------------
>
>                 Key: BATIK-1117
>                 URL: https://issues.apache.org/jira/browse/BATIK-1117
>             Project: Batik
>          Issue Type: Bug
>            Reporter: wzw9258
>
> We develop power monitoring software, the client uses Batik displays real-time data. SVG file using the "<Text>" display real-time values, refresh every 3 seconds.
> svg document reads as follows:
> <text pathName="Ia" flagId="copy_219" svgLavel="0" id="0f28cde7-e0f9-4e18-aa7b-5c78d0e76573" mtype="0" style="visibility:visible;fill:#00ff00;font-size:10pt;opacity:1.0;font-family:serif;stroke-width:1.0;" name="Ia" parentFlagId="use_20" transform="matrix( 1, 0, 0, 1, 354.85, -91.2)" isSaved="true" metaType="analog" planeLavel="1" elementType="text" x="293" y="297">
> value</text>
> Real Update method is as follows:
> UpdateManager um = MmiSvgCanvas.this.getUpdateManager();
> um.getUpdateRunnableQueue().invokeLater(
> 	new   Runnable()   { 
> 	     public   void   run()   
> 		{
> 			element.getChildNodes().item(0).setNodeValue(value);
> 		}
> 	     });
> Text sometimes do not show up or show cases incomplete, the source debugging find unusual or garbled BidiAttributedCharacterIterator constructor.
> Exception as follows:
> stroking text painter>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>1233.18A
> computeTextRuns  text node=========1233.18A
> BidiAttributedCharacterIterator------------------------------
> stroking text painter>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>1233.18A
> strb========1233.18A
> computeTextRuns  text node=========1233.18A
> BidiAttributedCharacterIterator------------------------------
> start==========0   end===8
> strb========1233.18A
> Run: 0->1 of 8   size==15
> start==========0   end===8
> Run: 1->1 of 8   size==15
> Run: 0->1 of 8   size==15
> Run: 1->8 of 8   size==13
> java.lang.IllegalArgumentException: Can't add attribute to 0-length text
> 	at java.text.AttributedString.addAttributes(AttributedString.java:364)
> 	at org.apache.batik.gvt.text.BidiAttributedCharacterIterator.<init>(BidiAttributedCharacterIterator.java:119)
> 	at org.apache.batik.gvt.renderer.StrokingTextPainter.computeTextRuns(StrokingTextPainter.java:241)
> 	at org.apache.batik.gvt.renderer.StrokingTextPainter.getTextRuns(StrokingTextPainter.java:214)
> 	at org.apache.batik.gvt.renderer.StrokingTextPainter.getBounds2D(StrokingTextPainter.java:1126)
> 	at org.apache.batik.gvt.TextNode.getPrimitiveBounds(Unknown Source)
> 	at org.apache.batik.gvt.AbstractGraphicsNode.getBounds(Unknown Source)
> 	at org.apache.batik.gvt.UpdateTracker.changeStarted(Unknown Source)
> 	at org.apache.batik.gvt.AbstractGraphicsNode.fireGraphicsNodeChangeStarted(Unknown Source)
> 	at org.apache.batik.gvt.AbstractGraphicsNode.fireGraphicsNodeChangeStarted(Unknown Source)
> 	at org.apache.batik.gvt.TextNode.swapTextPaintInfo(Unknown Source)
> 	at org.apache.batik.bridge.SVGTextElementBridge.addPaintAttributes(Unknown Source)
> 	at org.apache.batik.bridge.SVGTextElementBridge.computeLaidoutText(Unknown Source)
> 	at org.apache.batik.bridge.SVGTextElementBridge.handleDOMSubtreeModifiedEvent(Unknown Source)
> 	at org.apache.batik.bridge.SVGTextElementBridge$DOMSubtreeModifiedEventListener.handleEvent(Unknown Source)
> 	at org.apache.batik.dom.events.EventSupport.fireEventListeners(Unknown Source)
> 	at org.apache.batik.dom.events.EventSupport.fireEventListeners(Unknown Source)
> 	at org.apache.batik.dom.events.EventSupport.dispatchEvent(Unknown Source)
> 	at org.apache.batik.dom.AbstractNode.dispatchEvent(Unknown Source)
> 	at org.apache.batik.dom.AbstractParentNode.fireDOMSubtreeModifiedEvent(Unknown Source)
> 	at org.apache.batik.dom.AbstractCharacterData.setNodeValue(Unknown Source)
> 	at com.kh.mmi.ui.svg.MmiSvgCanvas.updateElement(MmiSvgCanvas.java:997)
> 	at com.kh.mmi.ui.svg.MmiSvgCanvas.access$10(MmiSvgCanvas.java:976)
> 	at com.kh.mmi.ui.svg.MmiSvgCanvas$1.run(MmiSvgCanvas.java:1073)
> 	at org.apache.batik.util.RunnableQueue.run(Unknown Source)
> 	at java.lang.Thread.run(Thread.java:662)
> Distortion as follows:
> computeTextRuns  text node=========162.00A
> BidiAttributedCharacterIterator------------------------------
> strb========16?????
> computeTextRuns  text node=========162.00A
> BidiAttributedCharacterIterator------------------------------
> start==========0   end===7
> strb========162.00A
> start==========0   end===7
> Run: 0->1 of 7   size==15
> Run: 0->1 of 7   size==15
> Run: 1->7 of 7   size==13
> Run: 1->7 of 7   size==13
> What causes this phenomenon ask?



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: batik-dev-unsubscribe@xmlgraphics.apache.org
For additional commands, e-mail: batik-dev-help@xmlgraphics.apache.org