GroupDocs.Editor-for-Java_22.9默认语言设置问题

你好,正在评估咱们的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);
上面的代码没法执行,能告诉我怎么设置打开文档的语言设置吗?

1 Like

@bullcat

你能分享有问题的文件吗?还要指定您的开发环境详细信息(例如,操作系统名称和版本、Java 版本)。您是针对特定文件还是针对所有带有中文字体的文件遇到此问题?

test1.docx (1.0 MB)
操作系统:windows 10
java: 11.0.12
使用sample目录中的英文测试文件,编辑保存后格式变化相对较小。
我们的目标时编辑公文,希望编辑保存前后格式尽量不要变化,请问有没有针对性的参数配置?
非常感谢!

1 Like

@bullcat

我们正在调查这个问题。您的调查票 ID 是 EDITORJAVA-672。如果有任何更新,您会收到通知。

@bullcat

在 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)

1 Like

@bullcat

你能强调一下区别吗?我们看到两个文件具有相同的内容。请看一下这个截屏 (55.2 KB)
。只有一点,必须在第二页上出现在第一页上。您能否截取差异的屏幕截图并与我们分享。

对,就是原始的一个文档,我仅仅使用java API重新保存了一个新文件,分页出现了差异,就是您截图里面显示的原始文档里面第二页的内容,新文件中到了第一页里面。我们想把咱们的grouptdocs.Editor使用在公文的编辑领域,这方面最重要的就是保留排版信息。

1 Like

@bullcat

我们理解您的担忧。但是我们需要看到您在排版方面面临的问题。
请分享示例代码和输出(有布局或排版问题),当然还有预期的输出。然后我们会清楚地理解这个问题并解决这个问题。

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);
谢谢您

1 Like

@bullcat

我们现在正在调查为什么第 2 页中的某些内容会出现在第 1 页上。如果有任何更新,您会收到通知。

@bullcat

如果要保留页面布局,则应在 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)

Screenshot 2022-10-08 094920.png (5.6 KB)
这是不一致的分页效果,请指导一下,谢谢

@bullcat

我们正在进一步调查这种情况。您将收到有关结果的通知。

你好,我找了一下分页错误的原因,是编辑模式保存后的文件,没有保留原来的页宽,请参考附件20221012140236.jpg (244.1 KB)

1 Like

@bullcat

所以,这是文档本身的问题。但是,API 不会创建此问题。