@Override public HSLFTextRun appendText(String text, boolean newParagraph) { // init paragraphs List<HSLFTextParagraph> paras = getTextParagraphs(); HSLFTextRun htr = HSLFTextParagraph.appendText(paras, text, newParagraph); setTextId(getRawText().hashCode()); return htr; }
/** * Sets (overwrites) the current text. * Uses the properties of the first paragraph / textrun * * @param text the text string used by this object. */ public static HSLFTextRun setText(List<HSLFTextParagraph> paragraphs, String text) { // check paragraphs assert(!paragraphs.isEmpty() && !paragraphs.get(0).getTextRuns().isEmpty()); Iterator<HSLFTextParagraph> paraIter = paragraphs.iterator(); HSLFTextParagraph htp = paraIter.next(); // keep first assert (htp != null); while (paraIter.hasNext()) { paraIter.next(); paraIter.remove(); } Iterator<HSLFTextRun> runIter = htp.getTextRuns().iterator(); if (runIter.hasNext()) { HSLFTextRun htr = runIter.next(); htr.setText(""); while (runIter.hasNext()) { runIter.next(); runIter.remove(); } } else { HSLFTextRun trun = new HSLFTextRun(htp); htp.addTextRun(trun); } return appendText(paragraphs, text, false); }