You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@poi.apache.org by se...@apache.org on 2011/07/21 06:25:40 UTC
svn commit: r1149035 -
/poi/trunk/src/scratchpad/src/org/apache/poi/hwpf/converter/WordToHtmlConverter.java
Author: sergey
Date: Thu Jul 21 04:25:39 2011
New Revision: 1149035
URL: http://svn.apache.org/viewvc?rev=1149035&view=rev
Log:
more compact HTML in Word-to-HTML converter
Modified:
poi/trunk/src/scratchpad/src/org/apache/poi/hwpf/converter/WordToHtmlConverter.java
Modified: poi/trunk/src/scratchpad/src/org/apache/poi/hwpf/converter/WordToHtmlConverter.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/scratchpad/src/org/apache/poi/hwpf/converter/WordToHtmlConverter.java?rev=1149035&r1=1149034&r2=1149035&view=diff
==============================================================================
--- poi/trunk/src/scratchpad/src/org/apache/poi/hwpf/converter/WordToHtmlConverter.java (original)
+++ poi/trunk/src/scratchpad/src/org/apache/poi/hwpf/converter/WordToHtmlConverter.java Thu Jul 21 04:25:39 2011
@@ -45,6 +45,8 @@ import org.apache.poi.util.POILogFactory
import org.apache.poi.util.POILogger;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
+import org.w3c.dom.Node;
+import org.w3c.dom.NodeList;
import org.w3c.dom.Text;
import static org.apache.poi.hwpf.converter.AbstractWordUtils.TWIPS_PER_INCH;
@@ -523,6 +525,32 @@ public class WordToHtmlConverter extends
htmlDocumentFacade.getOrCreateCssClass(
pElement.getTagName(), "p", style.toString() ) );
+ {
+ // compact spans
+ NodeList childNodes = pElement.getChildNodes();
+ for ( int i = 0; i < childNodes.getLength() - 1; i++ )
+ {
+ Node child1 = childNodes.item( i );
+ Node child2 = childNodes.item( i + 1 );
+ if ( child1.getNodeType() != Node.ELEMENT_NODE
+ || child2.getNodeType() != Node.ELEMENT_NODE
+ || !WordToHtmlUtils.equals( "span",
+ ( (Element) child1 ).getTagName() )
+ || !WordToHtmlUtils.equals( "span",
+ ( (Element) child2 ).getTagName() )
+ || !WordToHtmlUtils.equals(
+ ( (Element) child1 ).getAttribute( "class" ),
+ ( (Element) child2 ).getAttribute( "class" ) ) )
+ continue;
+
+ // merge
+ while ( child2.getChildNodes().getLength() > 0 )
+ child1.appendChild( child2.getFirstChild() );
+ child2.getParentNode().removeChild( child2 );
+ i--;
+ }
+ }
+
return;
}
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@poi.apache.org
For additional commands, e-mail: commits-help@poi.apache.org