Google apps script 如何使整个google文档不突出显示?(谷歌应用程序脚本)
我正在制作一个程序,向你展示谷歌文档中最常用的单词,然后突出显示它们。我想有一个菜单按钮,当点击时,将取消突出显示当前突出显示的所有内容 我找不到任何人在做类似的事情,所以我试着做这样的事情:Google apps script 如何使整个google文档不突出显示?(谷歌应用程序脚本),google-apps-script,google-docs,Google Apps Script,Google Docs,我正在制作一个程序,向你展示谷歌文档中最常用的单词,然后突出显示它们。我想有一个菜单按钮,当点击时,将取消突出显示当前突出显示的所有内容 我找不到任何人在做类似的事情,所以我试着做这样的事情: function onOpen() { var ui = DocumentApp.getUi(); ui.createMenu("Extra Tools") .addItem('Clear Highlights', 'clear') ) .a
function onOpen() {
var ui = DocumentApp.getUi();
ui.createMenu("Extra Tools")
.addItem('Clear Highlights', 'clear')
)
.addToUi();
}
function clear()
{
var DocText = DocumentApp.getActiveDocument().getBody().getText();
DocText.getElement().asText.setBackgroundColor("#FFFFFF");
}
但它不起作用,给了我一个错误“TypeError:在对象中找不到函数getElement”
有没有办法将整个文档的高光/背景色设置为白色/透明?试试以下方法:
function clearHighLight() {
var bgcolor='#ffffff';//white
var doc=DocumentApp.getActiveDocument();
var rangeBuilder=doc.newRange();
var bdy=doc.getBody();
var numCh=bdy.getNumChildren();
for (var i=0;i<numCh;i++) {
var child=bdy.getChild(i);//collect all range elements
var all=rangeBuilder.addElement(child);
}
doc.setSelection(all);
var selectedElements = all.getRangeElements();
for(var i=0;i<selectedElements.length;i++) {
var selElem = selectedElements[i];
var el = selElem.getElement();
var isPartial = selElem.isPartial();
if(isPartial) {
var selStart = selElem.getStartOffset();
var selEnd = selElem.getEndOffsetInclusive();
el.asText().setBackgroundColor(selStart, selEnd, bgcolor)
}else {
var selStart = selElem.getStartOffset();
var selEnd = selElem.getEndOffsetInclusive();
el.asText().setBackgroundColor(bgcolor);
}
}
var rg=doc.newRange();
rg.addElement(bdy.getChild(0));//child zero normally has nothing in it
doc.setSelection(rg.build());
}
函数clearHighLight(){
var bgcolor='#ffffff';//白色
var doc=DocumentApp.getActiveDocument();
var rangeBuilder=doc.newRange();
var bdy=doc.getBody();
var numCh=bdy.getNumChildren();
对于(var i=0;i