Tag: docx

Doc4j – 在使用文档中的表格将docx转换为PDF时出现问题

我刚刚通过docx4j的示例webapp尝试了docx文档: http : //webapp.docx4java.org/OnlineDemo/docx_to_pdf_fop.html生成的PDF文件表格格式不正确。 实际上这些表格明显不合适…… 我只是想知道是不是因为docx4j没有正确支持表格,或者它是某种错误。 如果是这样,如果有人能指出我正确的信息。

替换.docx(Apache POI,Docx4j或其他)中的文本模板

我想使用正则表达式(java RegEx)在MS Word ( .docx )文档中进行替换: Example: …, с одной стороны, и %SOME_TEXT% именуемое в дальнейшем «Заказчик», в лице %SOME_TEXT% действующего на основании %SOME_TEXT% с другой стороны, заключили настоящий Договор о нижеследующем: … 我试图让文本模板(比如%SOME_TEXT% )使用Apache POI – XWPF并替换文本,但不能保证替换,因为POI分离了runs =>我得到这样的东西( System.out.println(run.getText(0)) ): … , с одной стороны, и % SOME_TEXT % именуемое в дальнейшем «Заказчик», в […]

将ZipEntry复制到新ZipFile的惯用方法是什么?

我正在编写一个工具来在DOCX文件中进行一些小文本替换,这是一种压缩格式。 我的方法是使用ZipOutputStream将ZipEntry内容从原始文件中的条目复制到修改后的文件中。 对于大多数DOCX文件,这种方法很有效,但偶尔我会遇到ZipException有关我写的内容与ZipEntry包含的元信息之间的差异(通常是压缩大小的差异)。 这是我用来复制内容的代码。 为简洁起见,我删除了error handling和文档处理; 到目前为止,我还没有遇到过文档条目的问题。 ZipFile original = new ZipFile(INPUT_FILENAME); ZipOutputStream outputStream = new ZipOutputStream(new FileOutputStream(OUTPUT_FILE)); Enumeration entries = original.entries(); byte[] buffer = new byte[512]; while (entries.hasMoreElements()) { ZipEntry entry = (ZipEntry)entries.nextElement(); if (“word/document.xml”.equalsIgnoreCase(entry.getName())) { //perform special processing } else{ outputStream.putNextEntry(entry); InputStream in = original.getInputStream(entry); while (0 < in.available()){ int read = in.read(buffer); […]

docx4j转换html-> docx-> html

我正在使用docx4j开发我的第一个项目…我的目标是将xhtml从webapp(ckeditor创建的html)导出到docx,在Word中编辑它,然后将其导回到ckeditor wysiwyg。 (* http://www.docx4java.org/forums/xhtml-import-f28/html-docx-html-inserts-a-lot-of-space-t1966.html#p6791?sid=78b64a02482926c4dbdbafbf50d0a914的 crosspost将在何时更新回答) 我创建了一个包含以下内容的html测试文档: TEST LINE 1TEST LINE 2 然后我的代码从这个html创建一个docx,如下所示:WordprocessingMLPackage wordMLPackage = WordprocessingMLPackage .createPackage(); NumberingDefinitionsPart ndp = new NumberingDefinitionsPart(); wordMLPackage.getMainDocumentPart().addTargetPart(ndp); ndp.unmarshalDefaultNumbering(); XHTMLImporterImpl xHTMLImporter = new XHTMLImporterImpl(wordMLPackage); xHTMLImporter.setHyperlinkStyle(“Hyperlink”); wordMLPackage.getMainDocumentPart().getContent() .addAll(xHTMLImporter.convert(new File(“test.html”), null)); System.out.println(XmlUtils.marshaltoString(wordMLPackage .getMainDocumentPart().getJaxbElement(), true, true)); wordMLPackage.save(new java.io.File(“test.docx”)); 我的代码然后尝试将docx BACK转换为html,如下所示:WordprocessingMLPackage wordMLPackage = WordprocessingMLPackage .createPackage(); NumberingDefinitionsPart ndp = new NumberingDefinitionsPart(); wordMLPackage.getMainDocumentPart().addTargetPart(ndp); ndp.unmarshalDefaultNumbering(); XHTMLImporterImpl xHTMLImporter = […]

如何使用Apache POI操纵注释的内容

我想在Docx文档中找到一条评论(不知何故,通过作者或ID …),然后创建新内容。 在这个答案的帮助下,我能够创建一个评论 ,但没有操纵的运气。

从docx中提取符号字符

我正在开发一个JAVA程序,它处理docx文件的XML内容并将其转换为特定格式。 它工作得很好,但如果Word文件包含符号字符,例如希腊字母,我会遇到问题。 在这种情况下,我只看到小方块。 我检查了源代码并看到如下内容: ďˇ 或者,如果我将编码设置为UTF-8:  当我查看为Hexa时,似乎希腊字符编码为EF 81 A1 for alpha, EF 81 A2 for beta等等。 我也尝试了val.getBytes(Charset.forName(“utf8”)) ,其中val是标签的值。 结果是例如[-17, -127, -95] 。 负面价值对我来说非常令人惊讶。 所以我的问题是,将这些符号转换为常规UTF-8字符的安全可靠方法是什么?

如何使用poi jar读取java api中的docx文件内容

我已经阅读了doc文件,现在我正在尝试阅读docx文件内容。 当我搜索示例代码时,我发现很多,没有任何效果。 检查代码以供参考…… import java.io.*; import org.apache.poi.xwpf.usermodel.XWPFDocument; import org.apache.poi.xwpf.extractor.XWPFWordExtractor; import com.itextpdf.text.pdf.PdfWriter; import com.itextpdf.text.Document; import com.itextpdf.text.Paragraph; public class createPdfForDocx { public static void main(String[] args) { InputStream fs = null; Document document = new Document(); XWPFWordExtractor extractor = null ; try { fs = new FileInputStream(“C:\\DATASTORE\\test.docx”); //XWPFDocument hdoc=new XWPFDocument(fs); XWPFDocument hdoc=new XWPFDocument(OPCPackage.open(fs)); //XWPFDocument hdoc=new XWPFDocument(fs); extractor […]

使用Java将DOC文件转换为DOCX

我需要在我正在开发的Java软件中使用DOCX文件(实际上是其中包含的XML),但我公司的一些人仍然使用DOC格式。 您知道是否有办法使用Java将DOC文件转换为DOCX格式? 我知道使用C#是可能的,但这不是一个选择 我用Google搜索,但没有出现…… 谢谢

Java – POI – 向标题添加图片

我一直在尝试使用Java POI将图片添加到新的docx文件中。 1)我添加了一个标题,并添加了一个文本(使用XWPFHeaderFooterPolicy)。 2)我创建了一个图像(使用CustomXWPFDocument)。 3)但我无法在标题区域内插入图像。 我试图通过将图片添加到标题的同一段中来实现,但它不起作用。 这是应该将图片添加到标题的function。 它需要一个已经创建的CustomXWPFDocument对象: private void addLogo(CustomXWPFDocument doc) throws InvalidFormatException, IOException, XmlException { String imgFile = “1.jpg”; CTP ctp = CTP.Factory.newInstance(); CTR ctr = ctp.addNewR(); CTText textt = ctr.addNewT(); textt.setStringValue( ” Page 1″ ); XWPFParagraph codePara = new XWPFParagraph( ctp, doc ); XWPFParagraph[] newparagraphs = new XWPFParagraph[1]; //add logo String blipId […]

使用Java将Microsoft Word文档读入纯文本(DOC,DOCX)

我正在寻找Java中的东西来阅读Word文档来处理他们的文本..所有我需要的是文本,没什么花哨的。 我知道Apache POI,但它现在不包括对DOCX的支持,那里有什么东西?