微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Aspose.Word将DOCX转换为HTML将失去MERGEFIELD,IF条件,页眉和页脚,表格单元格的宽度

如何解决Aspose.Word将DOCX转换为HTML将失去MERGEFIELD,IF条件,页眉和页脚,表格单元格的宽度

我正在尝试编写一个在线文档编辑器,其中TinyMCE 5作为编辑器,Aspose.Word v20.8作为转换器。

但是当我使用Aspose.Word将DOCX转换为HTML5时,它在TinyMCE中无法按预期呈现。 我现在可以知道,例如,HTML的标题,页脚,MergeFields,IF,TableStart:TableEnd sofar松动了。 我需要HTML包含所有数据,因为我需要再次将其转换回DOCX。

生成HTML5的代码为:

var doc = new Document({Stream_Of_DOCX});
var options = new HtmlSaveOptions();
options.SaveFormat = SaveFormat.Html;
options.Encoding = System.Text.Encoding.UTF8;
options.UpdateFields = true;
options.Exportroundtripinformation = true;
options.ExportimagesAsBase64 = true;
options.ExportFontsAsBase64 = true;
options.ExportPageSetup = true;
options.ExportDocumentProperties = true;
options.ExportHeadersFootersMode = ExportHeadersFootersMode.PerSection;
options.HtmlVersion = HtmlVersion.Html5;

doc.Save($"{fileName}.html",options);

将HTML5转换回DOCX的代码是模型。HTML是TinyMCE文本区域:

var doc = new Document();
var builder = new DocumentBuilder(doc);
builder.InsertHtml(model.Html);
doc.Save($"{fileName}.docx");

有人可以帮助我使用一些代码示例吗? 或者,也许有一个更好的主意来完成任务。 主要思想是能够在线编辑DOCX文件,而不必下载并重新以某些Windows服务作为客户端重新上传

解决方法

如果启用ExportRoundtripInformation选项,则Aspose.Word在保存到HTML时会保留页眉和页脚。在这种情况下,Aspose.Words使用特殊的CSS属性写入页眉和页脚内容,Aspose.Words可以理解这些内容:

<div style="-aw-headerfooter-type:header-primary; clear:both">
    <p style="margin-top:0pt; margin-bottom:0pt; line-height:normal">
        <span>header</span>
    </p>
</div>

此外,Aspose.Words保留一些字段(PAGE,NUMPAGES,NOTEREF,REF,AUTOR和TITLE)。例如,PAGE字段的输出如下:

<span style="-aw-field-start:true"></span><span style="-aw-field-code:' PAGE   \\* MERGEFORMAT '"></span><span style="-aw-field-separator:true"></span><span>1</span><span style="-aw-field-end:true"></span>

Aspose.Words会在读取HTML并将其作为字段加载到模型中时识别出这些内容。我也记录了WORDSNET-21037请求,以保留其他类型的字段。

我对TinyMCE并不熟悉,但是我怀疑Aspose.Words用于往返MS Word功能的自定义属性已删除,这就是为什么在您的案例中不保留Header和Footer的原因。

披露:我在Aspose.Words团队工作。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。