Author: nick
Date: Wed Jun 12 17:54:39 2013
New Revision: 1492308
URL: http://svn.apache.org/r1492308
Log:
Patch from akhikhl from github pull #3 - Extract references from XWPF footnotes
Modified:
poi/trunk/src/ooxml/java/org/apache/poi/xwpf/usermodel/XWPFRun.java
poi/trunk/src/ooxml/testcases/org/apache/poi/xwpf/extractor/TestXWPFWordExtractor.java
Modified: poi/trunk/src/ooxml/java/org/apache/poi/xwpf/usermodel/XWPFRun.java
URL:
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xwpf/usermodel/XWPFRun.java?rev=1492308&r1=1492307&r2=1492308&view=diff
==============================================================================
--- poi/trunk/src/ooxml/java/org/apache/poi/xwpf/usermodel/XWPFRun.java
(original)
+++ poi/trunk/src/ooxml/java/org/apache/poi/xwpf/usermodel/XWPFRun.java Wed Jun
12 17:54:39 2013
@@ -52,6 +52,7 @@ import org.openxmlformats.schemas.wordpr
import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTDrawing;
import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTEmpty;
import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTFonts;
+import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTFtnEdnRef;
import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTHpsMeasure;
import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTOnOff;
import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTPTab;
@@ -817,6 +818,12 @@ public class XWPFRun {
text.append("\n");
}
}
+ if (o instanceof CTFtnEdnRef) {
+ CTFtnEdnRef ftn = (CTFtnEdnRef)o;
+ String footnoteRef =
ftn.getDomNode().getLocalName().equals("footnoteReference") ?
+ "[footnoteRef:" + ftn.getId().intValue() + "]" :
"[endnoteRef:" + ftn.getId().intValue() + "]";
+ text.append(footnoteRef);
+ }
}
c.dispose();
Modified:
poi/trunk/src/ooxml/testcases/org/apache/poi/xwpf/extractor/TestXWPFWordExtractor.java
URL:
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/testcases/org/apache/poi/xwpf/extractor/TestXWPFWordExtractor.java?rev=1492308&r1=1492307&r2=1492308&view=diff
==============================================================================
---
poi/trunk/src/ooxml/testcases/org/apache/poi/xwpf/extractor/TestXWPFWordExtractor.java
(original)
+++
poi/trunk/src/ooxml/testcases/org/apache/poi/xwpf/extractor/TestXWPFWordExtractor.java
Wed Jun 12 17:54:39 2013
@@ -166,8 +166,9 @@ public class TestXWPFWordExtractor exten
public void testFootnotes() throws IOException {
XWPFDocument doc =
XWPFTestDataSamples.openSampleDocument("footnotes.docx");
XWPFWordExtractor extractor = new XWPFWordExtractor(doc);
-
- assertTrue(extractor.getText().contains("snoska"));
+ String text = extractor.getText();
+ assertTrue(text.contains("snoska"));
+ assertTrue(text.contains("Eto ochen prostoy[footnoteRef:1] text so
snoskoy"));
}
@@ -190,8 +191,9 @@ public class TestXWPFWordExtractor exten
public void testEndnotes() throws IOException {
XWPFDocument doc =
XWPFTestDataSamples.openSampleDocument("endnotes.docx");
XWPFWordExtractor extractor = new XWPFWordExtractor(doc);
-
- assertTrue(extractor.getText().contains("XXX"));
+ String text = extractor.getText();
+ assertTrue(text.contains("XXX"));
+ assertTrue(text.contains("tilaka [endnoteRef:2]or 'tika'"));
}
public void testInsertedDeletedText() throws IOException {
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]