我插入了一个内容控件,知道这个内容控件的Tag,有什么办法可以滚动到文档内这个内容控件的位置吗?实现效果类似锚点,我现在找了文档内的ScrollIntoView或者ScrollTo,但是两者需要的参数我不知道怎么基于这个内容控件去取,我代码如下:
// 取得文档类型应用对象
const app = wpsComponentRef.value.wpsInstance.Application;
// 内容控件对象
const contentControls = await app.ActiveDocument.ContentControls;
// 获取文档内容控件的数量
const controlCount = await contentControls.Count;
// 循环遍历方式查到目标控件
for (let i = 1; i <= controlCount; i++) {
const contentControl = await contentControls.Item(i);
// 获取内容控件Tag
const Tag = await contentControl.Tag;
if (Tag === item.tag) {
console.log(item, 'contentControl');
// 获取内容控件的范围
const range = await contentControl.Range;
// 获取起始位置
const start = await range.Start;
const end = await range.End;
console.log(start, end, 'start, end');
// // 获取range
// const selectedRange = await app.ActiveDocument.ActiveWindow.RangeFromPoint(start, end);
// console.log(selectedRange, 'selectedRange');
// // 滚动文档窗口, 显示指定的区域
// await app.ActiveDocument.ActiveWindow.ScrollIntoView(selectedRange);
// 滚动正文容器到指定位置
await app.ActiveDocument.ScrollTo({ ScrollLeft: 0, ScrollTop: 100 });
}
}