<changes>
<release version="3.8-beta6" date="2012-??-??">
+ <action dev="poi-developers" type="add">52568 - Added methods to set/get an XWPFRun's text color</action>
<action dev="poi-developers" type="add">52566 - Added methods to set/get vertical alignment and color in XWPFTableCell</action>
<action dev="poi-developers" type="add">52562 - Added methods to get/set a table row's Can't Split and Repeat Header attributes in XWPF</action>
<action dev="poi-developers" type="add">52561 - Added methods to set table inside borders and cell margins in XWPF</action>
import org.openxmlformats.schemas.drawingml.x2006.wordprocessingDrawing.CTAnchor;
import org.openxmlformats.schemas.drawingml.x2006.wordprocessingDrawing.CTInline;
import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTBr;
+import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTColor;
import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTDrawing;
import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTEmpty;
import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTFonts;
* XWPFRun object defines a region of text with a common set of properties
*
* @author Yegor Kozlov
+ * @author Gregg Morris (gregg dot morris at gmail dot com) - added getColor(), setColor()
+ *
*/
public class XWPFRun {
private CTR run;
bold.setVal(value ? STOnOff.TRUE : STOnOff.FALSE);
}
+ /**
+ * Get text color. The returned value is a string in the hex form "RRGGBB".
+ */
+ public String getColor() {
+ String color = null;
+ if (run.isSetRPr()) {
+ CTRPr pr = run.getRPr();
+ if (pr.isSetColor()) {
+ CTColor clr = pr.getColor();
+ color = clr.xgetVal().getStringValue();
+ }
+ }
+ return color;
+ }
+
+ /**
+ * Set text color.
+ * @param rgbStr - the desired color, in the hex form "RRGGBB".
+ */
+ public void setColor(String rgbStr) {
+ CTRPr pr = run.isSetRPr() ? run.getRPr() : run.addNewRPr();
+ CTColor color = pr.isSetColor() ? pr.getColor() : pr.addNewColor();
+ color.setVal(rgbStr);
+ }
+
/**
* Return the string content of this text run
*
assertEquals(2400, rpr.getPosition().getVal().longValue());
}
+ public void testSetGetColor() {
+ XWPFRun run = new XWPFRun(ctRun, p);
+ run.setColor("0F0F0F");
+ String clr = run.getColor();
+ assertEquals("0F0F0F", clr);
+ }
+
public void testAddCarriageReturn() {
ctRun.addNewT().setStringValue("TEST STRING");