Javascript 使用Office.js更改ContentControl内部的对齐方式
我有以下代码:Javascript 使用Office.js更改ContentControl内部的对齐方式,javascript,ms-word,office-js,Javascript,Ms Word,Office Js,我有以下代码: Word.run(context => { var range = context.document.getSelection(); var cc = range.insertContentControl(); var ccRange = cc.insertHtml(myContent, 'replace'); // ... 它很好用。例如,如果将文档对齐设置为对齐,则新ContentControl中的内容也将是对齐。我知道用户可以简单地选择内容并更改登录
Word.run(context => {
var range = context.document.getSelection();
var cc = range.insertContentControl();
var ccRange = cc.insertHtml(myContent, 'replace');
// ...
它很好用。例如,如果将文档对齐设置为对齐
,则新ContentControl中的内容也将是对齐
。我知道用户可以简单地选择内容并更改登录,但我需要在默认情况下将其设置为Left
我知道如何处理字体,以确保其样式与文档相同,为此,我有以下代码紧跟上述代码:
// ...
context.load(range, 'font');
context.load(ccRange, 'font');
context.sync().then(() => {
ccRange.font.color = range.font.color;
ccRange.font.highlightColor = range.font.highlightColor;
ccRange.font.name = range.font.name;
ccRange.font.size = range.font.size;
// ...
基于此示例,我假设有一种类似的方法可以更改ContentControl内部的对齐方式,但到目前为止我失败了
如果我理解正确,ContentControl有一个段落
属性,一个段落有一个对齐
属性,所以我猜这就是我需要的,但是我访问它的几次尝试都没有结果(例如context.load(cc,'段落';
然后在上下文同步后访问属性)
正确的方法是什么?我发现“加载”变量比加载上下文要容易一些,但两种方法都有效 加载
“段落”
就像加载“字体”
一样。您还可以同时使用“段落,字体”
加载它们,使事情更加简单
例如,此代码将插入一个ContentControl
,插入一些HTML内容,并将对齐设置为'centered'
:
return Word.run(function (context) {
let range = context.document.getSelection();
let cc = range.insertContentControl();
let ccRange = cc.insertHtml('<b>Hello World</b>', 'Replace');
ccRange.load('font, paragraphs');
return context.sync().then(() => {
ccRange.paragraphs.items[0].alignment = 'Centered';
return context.sync();
});
});
返回Word.run(函数(上下文){
让range=context.document.getSelection();
设cc=range.insertContentControl();
让ccRange=cc.insertHtml('Hello World','Replace');
加载('字体,段落');
返回context.sync()。然后(()=>{
ccRange.parages.items[0]。对齐方式='居中';
返回context.sync();
});
});
是的,这对我很有用,谢谢。我缺少项
部分。除其他外,我还尝试了以下方法:.parages[0]
和.parages.m\u items[0]
(我在日志中看到了一个道具,但它看起来确实像一个内部道具)。