sackley 2003/11/12 19:26:33
Modified: src/scratchpad/src/org/apache/poi/hwpf Range.java
HWPFDocument.java
Log:
latest changes
Revision Changes Path
1.4 +16 -4 jakarta-poi/src/scratchpad/src/org/apache/poi/hwpf/Range.java
Index: Range.java
===================================================================
RCS file: /home/cvs/jakarta-poi/src/scratchpad/src/org/apache/poi/hwpf/Range.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- Range.java 12 Nov 2003 01:33:30 -0000 1.3
+++ Range.java 13 Nov 2003 03:26:33 -0000 1.4
@@ -77,6 +77,7 @@
import org.apache.poi.hwpf.model.hdftypes.TextPiece;
import org.apache.poi.hwpf.sprm.CharacterSprmUncompressor;
+import org.apache.poi.hwpf.sprm.CharacterSprmCompressor;
import org.apache.poi.hwpf.sprm.SectionSprmUncompressor;
import org.apache.poi.hwpf.sprm.ParagraphSprmUncompressor;
@@ -194,7 +195,7 @@
_doc.getCharacterTable().adjustForInsert(_textStart, adjustedLength);
_doc.getParagraphTable().adjustForInsert(_textStart, adjustedLength);
_doc.getSectionTable().adjustForInsert(_textStart, adjustedLength);
- return null;
+ return getCharacterRange(0);
}
public CharacterRange insertAfter(String text)
@@ -203,8 +204,19 @@
}
public CharacterRange insertBefore(String text, CharacterRun cr)
+ throws UnsupportedEncodingException
{
- return null;
+ initAll();
+ PAPX papx = (PAPX)_paragraphs.get(_parStart);
+ short istd = papx.getIstd();
+
+ StyleSheet ss = _doc.getStyleSheet();
+ CharacterRun baseStyle = ss.getCharacterStyle(istd);
+
+ byte[] grpprl = CharacterSprmCompressor.compressCharacterProperty(cr,
baseStyle);
+ _doc.getCharacterTable().insert(_charStart, _start, grpprl);
+
+ return insertBefore(text);
}
public CharacterRange insertAfter(String text, CharacterRun cr)
@@ -234,7 +246,7 @@
chpx.getEnd());
List paragraphList = _paragraphs.subList(point[0], point[1]);
PAPX papx = (PAPX)paragraphList.get(0);
- short istd = LittleEndian.getShort(papx.getBuf());
+ short istd = papx.getIstd();
StyleSheet sd = _doc.getStyleSheet();
CharacterRun baseStyle = sd.getCharacterStyle(istd);
@@ -260,7 +272,7 @@
public Paragraph getParagraph(int index)
{
initParagraphs();
- PAPX papx = (PAPX)_sections.get(index + _parStart);
+ PAPX papx = (PAPX)_paragraphs.get(index + _parStart);
Paragraph pap = (Paragraph)papx.getCacheContents();
if (pap == null)
{
1.6 +7 -1
jakarta-poi/src/scratchpad/src/org/apache/poi/hwpf/HWPFDocument.java
Index: HWPFDocument.java
===================================================================
RCS file:
/home/cvs/jakarta-poi/src/scratchpad/src/org/apache/poi/hwpf/HWPFDocument.java,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- HWPFDocument.java 12 Nov 2003 01:33:30 -0000 1.5
+++ HWPFDocument.java 13 Nov 2003 03:26:33 -0000 1.6
@@ -64,6 +64,7 @@
import org.apache.poi.poifs.filesystem.POIFSFileSystem;
import org.apache.poi.poifs.filesystem.DocumentEntry;
import org.apache.poi.poifs.common.POIFSConstants;
+import org.apache.poi.hwpf.usermodel.CharacterRun;
import org.apache.poi.hwpf.model.hdftypes.*;
import org.apache.poi.hwpf.model.io.*;
@@ -327,8 +328,13 @@
try
{
HWPFDocument doc = new HWPFDocument(new FileInputStream(args[0]));
+ CharacterRun run = new CharacterRun();
+ run.setBold(true);
+ run.setItalic(true);
+ run.setCapitalized(true);
+
Range range = doc.getRange();
- range.insertBefore("Hello World!!! HAHAHAHAHA I DID IT!!!");
+ range.insertBefore("Hello World!!! HAHAHAHAHA I DID IT!!!", run);
OutputStream out = new FileOutputStream(args[1]);
doc.write(out);
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]