标签: docx

是否有可以创建丰富Word文档的Java API?

我有一个新的应用程序,我将在哪里生成一个包含表格,图形,目录和文本的Word文档.什么是一个很好的API用于此?你有多确定它支持图形,ToC和表格?使用它们有什么隐藏的问题?

一些澄清:

  • 我无法输出PDF,他们想要一个Word文档.
  • 他们使用的是MS Word 2003(或2007),而不是OpenOffice
  • 应用程序正在*nix app-server上运行

如果我可以从模板文档开始,只需用表格,图形等填充一些空格,那就太好了.

编辑:下面有几个很好的答案,每个都有自己的错误,就我目前的情况而言.很难从他们那里选择"最终答案".我想我会把它打开,并希望能够创造出更好的解决方案.

编辑:OpenOffice UNO项目似乎与我的要求最接近.虽然POI肯定是主流,但它对我想要的东西来说太不成熟了.

java ms-word doc docx

110
推荐指数
4
解决办法
15万
查看次数

降价至docx,包括复杂模板

我已经自动构建了使用Pandoc将Markdown文件转换为DOCX文件.我甚至使用参考文档来确定最终文档的样式.我使用的命令是:

pandoc -f markdown -t docx --data-dir=docs/rendering/ mydoc.md -o mydoc.docx
Run Code Online (Sandbox Code Playgroud)

reference.docx从拾起Pandoc docs/rendering和Pandoc使mydoc.docx具有相同风格的参考文档.

但是,不仅reference.docx包含样式.它包含公司徽标,序言等.

如何自动将Markdown内容与样式和内容合并reference.docx.我的解决方案需要在Linux上运行.

markdown docx pandoc

65
推荐指数
4
解决办法
3万
查看次数

如何在Word 2007 .docx文件中搜索单词?

我想在Word 2007文件(.docx)中搜索文本字符串,例如,可以/可以从Word中的搜索中找到的"某些特殊短语".

有没有办法从Python看文本?我对格式化没兴趣 - 我只想将文档分类为是否有"某些特殊短语".

python ms-word docx openxml

47
推荐指数
5
解决办法
4万
查看次数

如何从word文件.doc,docx,.xlsx,.pptx php中提取文本

可能有一种情况我们需要从word文档中获取文本以供将来使用,以搜索用户上传的文档中的字符串,如在cv /简历中搜索,并出现如何获取文本的常见问题,打开和读取用户上传Word文档,有一些有用的链接,但不能解决整个问题.我们需要在上传时获取文本并将文本保存在数据库中,我们可以在数据库中轻松搜索.

php ms-word docx .doc

44
推荐指数
3
解决办法
8万
查看次数

如何从.doc和.docx文件中提取纯文本?(UNIX)

任何人都知道他们可以推荐什么,以便从.doc或.docx中提取纯文本?

我发现这种最好的方法从Word文档中提取文本而不使用COM /自动化? - 想知道是否还有其他建议?

速度并不重要,我们甚至可以使用具有一些API的网站上传和提取文件,但我一直无法找到.

谢谢

unix text-extraction doc extract docx

42
推荐指数
5
解决办法
6万
查看次数

没有安装Word,以编程方式将DOCX转换为PDF?

我有一个Web应用程序,我需要将DOCX文件转换为PDF以生成一些在Word 2007中的报告.首先我使用自动化,我遇到了DCOM问题,最后我发现Microsoft不支持服务器端Word的自动化.现在我正在寻找其他免费工具而不是Word等不是免费的,iTextSharp不会将DOCX转换为PDF.

如果有人知道免费工具或.NET类来进行此对话,请告诉我.

c# pdf asp.net docx

35
推荐指数
0
解决办法
4万
查看次数

DOCX和PDF的版本控制?

我一直在githg最近一起玩,然后我突然意识到这种事情对文件很有用.

我有一个文档,我在DOCX中编辑并导出为PDF.我尝试使用它们git并对其hg进行版本控制,结果发现hg最终仅跟踪二进制并且差异没有意义.虽然git我可以有意义地区分DOCX(尚未尝试使用PDF)但我想知道是否有更好的方法来做到这一点,而不是我现在正在做的事情.(理想情况下,不必将Word留给diff将是最佳解决方案.)

- Ashish Gandhi

pdf version-control docx

34
推荐指数
4
解决办法
2万
查看次数

如何将WordprocessingML文件夹压缩成可读的docx

我一直在尝试编写一个简单的Markdown - > docx解析器/编写器,但我完全坚持最后一部分,这应该是最简单的:即将文件夹压缩为.docx,Word或任何其他.docx读取器,将认识.

我的解析器编写器实际上是无关紧要的:如果我只是解压缩任何旧的Word生成的*.docx,然后尝试使用通常的压缩实用程序重新压缩它,并给它文件结束docx,我就会遇到这个问题.我应该添加一些神秘的标题,还是需要一个特殊的OPC压缩实用程序,或者什么?

我不太想要一个能够做到这一点的工具,以便弄清楚应该是什么.它似乎独立于WordprocessingML规范.

不用说我对压缩一无所知.我可以通过Google找到的所有内容都与您可以在商业中使用的花哨实用程序有关,但我正在制作一个可执行的GPLd或其他东西,并且可以处理任何事情.

xml compression markdown docx

33
推荐指数
3
解决办法
1万
查看次数

如何使用Apache POI创建简单的docx文件?

我正在寻找一个简单的示例代码或完整的教程如何docx使用Apache POI及其底层创建文件openxml4j.

我尝试下面的代码(有很多从内容的帮助,协助,感谢Eclipse的!),但代码不能正常工作.

String tmpPathname = aFilename + ".docx";
File tmpFile = new File(tmpPathname);

ZipPackage tmpPackage = (ZipPackage) OPCPackage.create(tmpPathname);
PackagePartName tmpFirstPartName = PackagingURIHelper.createPartName("/FirstPart");
PackagePart tmpFirstPart = tmpPackage.createPart(tmpFirstPartName, "ISO-8859-1");

XWPFDocument tmpDocument = new XWPFDocument(tmpPackage); //Exception
XWPFParagraph tmpParagraph = tmpDocument.createParagraph();
XWPFRun tmpRun = tmpParagraph.createRun();
tmpRun.setText("LALALALAALALAAAA");
tmpRun.setFontSize(18);
tmpPackage.save(tmpFile);
Run Code Online (Sandbox Code Playgroud)

抛出的异常如下:

Exception in thread "main" java.lang.NullPointerException
    at org.apache.poi.POIXMLDocumentPart.read(POIXMLDocumentPart.java:235)
    at org.apache.poi.POIXMLDocument.load(POIXMLDocument.java:196)
    at org.apache.poi.xwpf.usermodel.XWPFDocument.<init>(XWPFDocument.java:94)
    at DocGenerator.makeDocxWithPoi(DocGenerator.java:64)
    at DocGenerator.main(DocGenerator.java:50)
Run Code Online (Sandbox Code Playgroud)

有人可以帮我解决(非常简单)的要求吗?

java docx apache-poi

32
推荐指数
1
解决办法
3万
查看次数

Knitr和Rmarkdown docx表

使用knitrrmarkdown一起创建word文档时,可以使用现有文档来设置输出样式.

例如在我的yaml标题中:

output: 
  word_document:
    reference_docx: style.docx
    fig_caption: TRUE
Run Code Online (Sandbox Code Playgroud)

在这种风格中,我创建了一个默认的表格样式 - 这里的目标是让kable表格输出的样式正确.

当我编写word文档并使用style.docx时,表格不会根据表格进行样式化.

到目前为止,使用样式检查器没有帮助,不确定默认表格样式是否是要修改的错误样式.

示例代码:

```{r kable}
n <- 100
x <- rnorm(n)
y <- 2*x + rnorm(n)
out <- lm(y ~ x)
library(knitr)
kable(summary(out)$coef, digits=2, caption = "Test Captions")
```
Run Code Online (Sandbox Code Playgroud)

不幸的是,我没有可以上传的程式化文档进行测试.

TL; DR:想要自动设定rmarkdown和knitr的表输出(通过kable)

更新:到目前为止,我发现更改docx中的"紧凑"样式将自动更改表格的文本内容 - 但这并不能解决整个表格样式,如单元格颜色和对齐方式.

更新2:经过更多研究和创建样式后,我发现knitr访问段落样式似乎没有问题.但是表格样式不属于该样式类别,似乎不适用于我的个人测试.

更新3:涉及ReporteRs软件包 - 虽然它能够生成表格,但是这样做所需的语法很费力.更确切地说,风格会自动应用.

更新4:您不能更改TableNormal样式,也不能设置表格正常样式.XML方法不是我们想要的.我有一个VBA宏可以做到这一点,只是想尽可能删除该过程.

r docx pandoc knitr r-markdown

31
推荐指数
3
解决办法
1万
查看次数