【问题标题】:Office 2013 JavaScript API for Word - Content Control questionsOffice 2013 JavaScript API for Word - 内容控制问题
【发布时间】:2013-04-15 15:29:56
【问题描述】:

是否可以在 Word 文档中插入内容控件,然后获取内容控件的某种句柄或上下文,然后将 HTML 插入其中?

基本上,我尝试使用 Office JavaScript API 创建的场景是根据用户的请求插入富文本内容控件,然后使用 HTML 填充它。

我可以使用http://social.msdn.microsoft.com/Forums/en-US/appsforoffice/thread/8c4809c7-743c-4388-aef0-bc6a6855c882 建议的方法从 JavaScript API 插入内容控件。它需要 ooxml 的 coercionType。但是,我希望使用 ooxml 填充的内容是基于 HTML 的。因此,当我尝试使用以下 ooxml 插入内容控件时:

...Boiler ooxml to create content control...

<w:r><w:t><h1>Test header</h1><h2>Test subheader</h2><p>Test paragraph text</p></w:t></w:r>

插入尝试失败。我假设这是因为在将其插入到带有 ooxml 的 coercionType 的文档中时,您不能混合使用 ooxml 和 html。

既然这种 ooxml 方法是您可以插入内容控件的唯一方法,那么我该如何设置带有 HTML 文本的内容控件?我已经查看了http://msdn.microsoft.com/en-us/library/fp142295.aspx 的文档对象帮助内容,但我不确定我仍然可以做到这一点,或者它是否可行。

谢谢

【问题讨论】:

    标签: ms-word office-js word-addins word-2013 word-contentcontrol


    【解决方案1】:

    虽然我没有用 JS 尝试过这个 - 但它应该是可能的。

    尝试添加一个 altChunk 元素,它可以包含其他打开的 xml 或 html。我已经成功使用了几次。

    关于这个问题的几个链接: http://blogs.msdn.com/b/brian_jones/archive/2008/12/08/the-easy-way-to-assemble-multiple-word-documents.aspx http://blogs.msdn.com/b/ericwhite/archive/2008/10/27/how-to-use-altchunk-for-document-assembly.aspx

    但是,你应该尝试使用“strict”-xml - 否则上述可能是不可能的。

    我刚刚找到this example(抱歉,它是德语,但在某个地方也应该有英文版本)。其中 coercionType 是这样使用的:

        Office.context.document.setSelectedDataAsync(
          booksToRead,
          { coercionType: Office.CoercionType.Html },
          function (result) {
        // Access the results, if necessary.
        });
    

    这也可以解决问题。

    【讨论】:

      猜你喜欢
      • 2014-11-07
      • 1970-01-01
      • 2017-09-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多