2

我正在尝试使用 Office js API 为 Word Office 创建一个应用程序。

我已经找到了如何在 word 文档中获取和设置内容,但我很难找到如何更改样式(标题等)之类的内容

在进入如何做之前,它甚至可能吗?

4

1 回答 1

1

您的问题的答案是肯定的,现在,api 这个词有点新,并且缺少一些可能使开发人员生活更轻松的功能。首先,api 一词不支持标题,解决此问题的方法是创建一个 Content 控件并将其用作标题。我目前正在我使用的文字应用程序中使用这项工作。

现在对于样式,样式非常好用。如果用户的电脑当前在他们的电脑上安装了这些样式,您可以轻松引用这些样式。但是,作为开发人员,您可能已经发现生活并不容易。所以我也遇到了这个问题,并通过首先插入我想要的内容,然后制作段落代理对象的集合来解决这个问题。然后我加载这两个对象,并同步。在我遍历段落集合并添加我的自定义样式后,这是我制作的预设对象。以下功能将向您展示我试图解释的内容。我希望这有帮助

    function InsertHtml(content, styleSelection) {

    Word.run(function (context) {

        var range = context.document.body.insertHtml(content, "end");
        var paragraphs = context.document.body.paragraphs;

        return context.sync().then(function () {

            var index = $.map(headerStyles, function (obj, index) {
                if (obj.name == styleSelection) {
                    return index;
                }
            })
            for (var x = 0; x < paragraphs.items.length; x++) {

                var paragraph = paragraphs.items[x];
                paragraph.font.name = headerStyles[index].fontName;
                paragraph.font.color = headerStyles[index].color;
                paragraph.font.size = headerStyles[index].size;
                paragraph.leftIndent = headerStyles[index].indent;
                //paragraph.lineSpacing = headerStyles[index].lineSpacing;
                //paragraph.alignment = headerStyles[index].alignment;                          
            }



            return context.sync();
        });
    })
    .catch(feedBackMessage);
};
于 2016-06-08T14:51:51.907 回答