你好,正在评估咱们的GroupDocs.Editor-for-Java,目前的编辑中文word文件时格式变化比较大。浏览咱们的论坛,看到有说需要设置load的默认语言选项。但是我在22.9版本的代码里面没有找到相关的语言设置项
LoadOptions loadOptions = new LoadOptions();
loadOptions.getLanguagePreferences().addEditingLanguage(EditingLanguage.CHINESE);
Document doc = new Document(getMyDir() + “No default editing language.docx”, loadOptions);
上面的代码没法执行,能告诉我怎么设置打开文档的语言设置吗?
test1.docx (1.0 MB)
操作系统:windows 10
java: 11.0.12
使用sample目录中的英文测试文件,编辑保存后格式变化相对较小。
我们的目标时编辑公文,希望编辑保存前后格式尽量不要变化,请问有没有针对性的参数配置?
非常感谢!
在 Java 的 GroupDocs.Editor 中,无法加载字体或语言 - 它已经存在(或不存在)在输入文档中。
如果我们谈论的是语言 - WordProcessingEditOptions.setEnableLanguageInformation() 选项将与语言相关的信息导出到 EditableDocument 并通过它导出到生成的 HTML 标记。
如果我们谈论字体 - WordProcessingEditOptions.setFontExtraction() 选项对字体资源的作用相同,
从输入 DOCX 中提取它们,放入 EditableDocument 并通过它
到生成的 HTML 标记。
您能否分享示例 Word 文件和您得到的输出?
你好,下面是我使用Java的GroupDocs.Editor的example程序进行的一个测试,其中test1文件是原始文件,output文件是使用java API编辑保存后的输出文件,请查阅
test1.docx (32.5 KB)
HelloWorldOutput.docx (15.3 KB)
对,就是原始的一个文档,我仅仅使用java API重新保存了一个新文件,分页出现了差异,就是您截图里面显示的原始文档里面第二页的内容,新文件中到了第一页里面。我们想把咱们的grouptdocs.Editor使用在公文的编辑领域,这方面最重要的就是保留排版信息。
screenshot.png (55.2 KB)
排版问题就如您发的上图内容,本应第二页显示的内容显示在了第一页里面
使用的代码就是example里面的代码:
Editor editor = new Editor(documentPath);
// Obtain editable document from original DOCX document
WordProcessingEditOptions editOptions = new WordProcessingEditOptions();
editOptions.setEnableLanguageInformation(true);
editOptions.setEnablePagination(true);
EditableDocument editableDocument = editor.edit(editOptions);//Open document for editing
System.out.println(“try to get embeddedHtml”);
String htmlContent = editableDocument.getEmbeddedHtml();
String savePath = Constants.getOutputDirectoryPath(“HelloWorldOutput.docx”);
WordProcessingSaveOptions saveOptions = new WordProcessingSaveOptions(WordProcessingFormats.Docx);
editor.save(editableDocument, savePath, saveOptions);
谢谢您
如果要保留页面布局,则应在 WordProcessingEditOptions 中启用分页模式。查看以下文档文章:
启用分页模式后,我们获得了生成的 DOCX 文件 output.zip (12.6 KB) 。如您所见,列表从第二页开始。
你好,
我在edit模式使用了分页模式,但是输出仍然有不一致的分页效果,代码如下,请您指导一下,谢谢
Editor editor = new Editor(documentPath);
// Obtain editable document from original DOCX document
WordProcessingEditOptions editOptions = new WordProcessingEditOptions();
editOptions.setFontExtraction(FontExtractionOptions.ExtractEmbeddedWithoutSystem);
editOptions.setEnableLanguageInformation(true);
editOptions.setEnablePagination(true);
EditableDocument editableDocument = editor.edit(editOptions);//Open document for editing
System.out.println("try to get embeddedHtml");
String htmlContent = editableDocument.getEmbeddedHtml();
String savePath = Constants.getOutputDirectoryPath("HelloWorldOutput.docx");
WordProcessingSaveOptions saveOptions = new WordProcessingSaveOptions(WordProcessingFormats.Docx);
saveOptions.setEnablePagination(true);
saveOptions.setLocale(Locale.SIMPLIFIED_CHINESE);
editor.save(editableDocument, savePath, saveOptions);<a class="attachment" href="/uploads/groupdocs/3973">Screenshot 2022-10-08 094920.png</a> (5.6 KB)