我想在段落的中间插入一个超链接。到目前为止,我设法将CTHyperlink
添加到CTP
的{{1}}中,并将XWPFParagraph
添加到我想要的位置。但是,生成的文档始终将超链接放在段落的末尾。有没有办法让xml元素的顺序与运行的顺序相对应?
我将此方法添加到XWPFParagraph中,这是我用来插入超链接的方法:
XWPFHyperlinkRun
在调用此方法之前,我已经创建了ctHyperlink:
public XWPFHyperlinkRun insertNewHyperlinkRun(int pos, CTHyperlink ctHyperlink) {
XWPFHyperlinkRun hyperlinkRun = new XWPFHyperlinkRun(ctHyperlink, ctHyperlink.getRArray(0), this);
int iPos = this.iruns.size();
if (pos < this.runs.size()) {
XWPFRun oldAtPos = (XWPFRun)this.runs.get(pos);
int oldAt = this.iruns.indexOf(oldAtPos);
if (oldAt != -1) {
iPos = oldAt;
}
}
this.iruns.add(iPos, hyperlinkRun);
this.runs.add(pos, hyperlinkRun);
return hyperlinkRun;
}