Google apps script 如何获取google文档中行尾字符的位置
在GoogleDocs附加组件QuickStart中,有一个很好的方法可以在文档的任何位置插入文本。它可以很好地处理选择以及在光标处插入,但是当您“选择”文档中任何一行末尾的“字符”时会出现问题 它实际上没有选择任何内容(或者至少没有从文档的Google apps script 如何获取google文档中行尾字符的位置,google-apps-script,google-docs,Google Apps Script,Google Docs,在GoogleDocs附加组件QuickStart中,有一个很好的方法可以在文档的任何位置插入文本。它可以很好地处理选择以及在光标处插入,但是当您“选择”文档中任何一行末尾的“字符”时会出现问题 它实际上没有选择任何内容(或者至少没有从文档的getSelection()方法返回任何内容),但是当我尝试使用文档的getCursor()方法获取位置时,该方法也返回空值,因此我没有参考框架来知道该位置在文档上的位置 。请注意,它不是正在选择的空格键;这是一个选择,你可以在谷歌文档中任何一行的末尾进行选
getSelection()
方法返回任何内容),但是当我尝试使用文档的getCursor()
方法获取位置时,该方法也返回空值,因此我没有参考框架来知道该位置在文档上的位置
。请注意,它不是正在选择的空格键;这是一个选择,你可以在谷歌文档中任何一行的末尾进行选择。另外,请注意这个错误,它表明没有位置可以使用getSurroundingText()
打开,因为getCursor()
方法返回null
我需要在该选择之前插入文本的位置,那么如何获得该位置(如果可能的话)?来自:
表示用户的选择,如果用户在文档中未选择任何内容,如果仅选择段落结尾,如果仅选择段落结尾和新行,或者如果脚本未绑定到文档,则为null
您在文档所指的“段落末尾”中选择的那一段,因此它返回的null
与定义的一样
我将研究使用返回的,然后可以用于
var document=DocumentApp.getActiveDocument();
var position=document.getCursor();
如果(位置!==null){
插入文本(“lorem ipsum”);
}
请注意,此解决方案可能会迫使您只将光标放在行的末尾,而不是选择段落的结尾。考虑到
getCursor
方法返回null
,在这种情况下,有没有办法找出它在哪个段落上?如果getSelection
和getCursor
方法都返回null
,我不知道如何将光标移动到行尾。有趣的是,如果在没有选择文本时它仍然返回null,但光标位于最后一个字符之后,那么在这种情况下,您可能运气不佳。您可以在文档上获取带有的列表,但没有关于光标或选择位置的详细信息查看文档getCursor
仅当未选择任何内容或脚本未连接到文档时才应返回null
。确保这两个约束都已稳定