问题标签 [xwpf]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1705 浏览

java - Word 文档中的 Apache POI 圆形项目符号列表

我想使用 Java 创建一个 word 文档,并想在文档中添加一个项目符号列表。子弹必须是圆形或复选标记而不是数字。我能够使用 XWPF 创建数字的项目符号列表,但不能创建圆形或复选标记项目符号。请分享一些示例,展示如何使用 Java 在 word 中创建圆形/复选标记类型的项目符号。

0 投票
1 回答
2504 浏览

java - 如何在 XWPFTableCell 中插入表格

我试图使用 Apache poi XWPF 创建一个 word 文档。在文档中,我试图在特定表格单元格中创建多个嵌套表格。

我使用我的代码并成功在一个表格单元格中创建了一个表格。但是当我试图在这个特定的单元格中创建更多表时,我的代码中有一个错误点说“java.lang.IndexOutOfBoundsException:”

错误发生在最后一次创建表时。对于嵌套的 Table1 和 Table2 ,创建是可以的。但最后一个表创建“XWPFTable nestedTable3 = cell.insertNewTbl(cursor3);” 报告我错误

0 投票
1 回答
1003 浏览

npoi - NPOI XWPF 如何将文本放在左右对齐的单行上?

我是使用 NPOI XWPF 并尝试创建我的第一个文档的新手,到目前为止一切顺利。我剩下的唯一问题是试图将文本放在左右对齐的同一行上,我希望它看起来像:

区域:1(左 Jstfd)年级/课程:10 年级阅读(右 Jstfd)

下面是我正在使用的代码片段,它只是将所有文本推送到页面左侧......等等

0 投票
1 回答
961 浏览

java - Apache POI,.getRuns() 不返回所有运行

我正在开发一个软件,它正在读取Word文档(XWPF),根据用户之前的配置更改语法,并将修改后的文本写回文档中。

为此,我使用了 Apache POI (3.10)。在大多数情况下,它按预期工作,但在极少数情况下,情况并非如此。

更具体地说,代码逐段遍历整个文档。我的代码通过设置运行的文本来更改段落的内容。

为了更好地了解我在说什么:

如您所见,我将段落的每一个运行都放入我的转换方法中,并覆盖运行的文本。在这一点上没有问题(我认为)。

我的问题是,有两三个句子(或段落)在运行时不会返回整个文本。下面是一个例子。

para.getText () 返回: Alle Beteiligten weisen daher den Notar gem。§ 53 BeurkG an, die Umschreibung gemäß dieser Vollmacht durch Eigenurkunde erst zu veranlassen, nachdem der Verkäufer den Eingang des geschuldeten Betrages originalschriftlich bestätigt haben oder hilfsweise die Käuferinnen die Zahlung des vereinbarten Kaufpreises duch.bank.

而paragraph.getRuns() 的串联返回:Alle Beteiligten weisen daher den Notar gem。§ 53 BeurkG an, die Umschreibung gemäß dieser Vollmacht durch Eigenurkunde erst zu veranlassen, nachdem die Verkäufer den Eingang des geschuldeten Betrages originalschriftlich bestätigt haben oder hilfsweise die Käuferinnen die Zahlung des vereinbarten Kaufpreises (jeweils ohne Zinsen)

你可以在这里看到,最后三个词不见了。由于我正在访问运行,因此最后一部分将被忽略并且永远不会被我的方法转换。但在这种情况下,我需要转换最后一个单词以使其语法正确。

有没有人经历过类似的事情?

我试图找到一种解决方法,但我没有找到。我的一位同事与我谈论了这一点,并提到他经历过类似的事情,有时在 Word 文档的类似 XML 的结构中存在类似缺陷,Word 仍然可以使用它,但 POI 不太好. 这听起来不太可能,因为我使用的文档曾经是旧的 Word 格式 (.doc),并在 Word 2007 中保存为 .docx。

0 投票
1 回答
3122 浏览

java - 使用 Apache POI 从 Word 文档中读取部分

我有一个.docx基于模板创建的 Word 文档 ( )。它有 4 个部分:标题、文档类型、标识和签名。

我一直在寻找一种使用 Apache POI 的 XWPF 阅读这些部分的方法。有什么建议吗?

0 投票
0 回答
865 浏览

java - 使用 XWPF 在 word doc 中以相同格式保存富文本区域内容

它可以使用 XWPF 轻松地将普通文本区域内容转换为 word 文档或使用 iTextpdf 转换为 pdf,但是当我尝试从富文本区域获取数据时,内容未显示在 word 文档或 pdf 中

我想从富文本区域内容中使用 XWPF 创建一个 word 文档。但是创建的word文档中没有显示内容。word文档内容如下所示。

</o:OfficeDocumentSettings> </xml>

正常</w:View> 0</w:Zoom> false</w:SaveIfXMLInvalid> false</w:IgnoreMixedContent> false</w:AlwaysShowPlaceholderText> EN-US</w:LidThemeOther> X-NONE</w :LidThemeAsian> AR-SA</w:LidThemeComplexScript> </w:Compatibility> </m:mathPr></w:WordDocument> </xml>

它在从普通文本区域获取数据时创建的 Word 文档中显示正确的数据。

新信.jsp

动作类

我尝试创建pdf而不是word文档,还是一样。那是对于普通文本区域,它会创建 pdf,但对于富文本区域内容,它不会以正确的方式创建 pdf

文档文档 = 新文档();文件 file = new File("C:\Myuploads\" + referenceId + ".pdf");

请帮助我,如何从富文本区域内容创建word文档或pdf文档,而不更改文本格式。我已经在谷歌搜索了这个解决方案.......提前感谢分享这个想法

0 投票
1 回答
822 浏览

apache-poi - 使用 Apache POI 在书签内插入表格

我将 Apache POI 与 Jython 一起使用来创建表并将它们放置在我有书签的 docx 的某些位置。我可以通过它们的名称找到书签(CTBookmark 对象),在放置它们的段落的开头创建一个光标,然后在那里创建一个新表:

如果我只想插入文本,我可以使用:

但是要插入另一个元素,比如表格,我找不到解决方案。如果将表格放在书签内会更好,但如果将它放在它之前,而不是在段落的开头,那也很棒。

我感谢任何帮助或替代想法。谢谢。

0 投票
1 回答
3936 浏览

java - XWPF 表格单元格中的新段落

我正在尝试创建一个包含一列的简单表。

我创建一个新行,并在每一行中创建一个新段落。问题是每一行都以一个空行开头-我猜是新段落创建了它。

我之前试图设置间距、缩进等,但没有成功。

新段落是否会创建一个新的空行?

该表如下所示:

0 投票
1 回答
1010 浏览

java - CTPageMar 值单位?

我正在使用 apache poi CTPageMar 类将页边距设置为用户给定的某个值。问题是我没有找到必须在函数 setLeft、setRight、setTop 和 setBottom 中传递的值的单位。我试过厘米、像素、英寸,但它们似乎都错了。任何想法?

0 投票
1 回答
1780 浏览

java - 如何向 XWPFRun 添加超链接

我想将 XWPF Run 的文本格式化为超链接。我可以使用下面给出的代码将其添加到段落中,但将其添加到单独的行中。

我像这样调用它:

这里中心是一个对象,它保存我需要打印的值。get 函数以字符串格式提供输出。

我得到的输出如下:

程序输出

我希望超链接与上一次运行在同一行中生成文本“文件上传:”