我正在尝试使用 Google Apps 脚本将文本替换为文档模板并将其保存为 .pdf。我大多是成功的,但我有一个问题。我想让脚本在模板中搜索文本,用提供的文本替换文本,使用项目符号。它将忽略可能已放入文本中的任何额外 \n。这是一个示例文本:
Today was a good day.
Tomorrow will be a good day.
Yesterday was a decent day.
在我的文档中,我希望将文本替换_text_
为一行:Comments: _text_
. 最终,应该打印出以下内容:
Comments:
- Today was a good day.
- Tomorrow will be a good day.
- Yesteday was a decent day.
这是我到目前为止的代码,但它运行得不太好。如果有人可以提供任何帮助,将不胜感激。
var listr = "";
var trunc = text.split("\n"); \\ where text is to be placed into the template
var index = b.findText("_text_").getStartOffset(); \\ var b is getBody()
for (var j = (trunc.length - 1); j >= 0; j--)
if(!trunc[j].equals("")) b.insertListItem(index, trunc[j]);
b.replaceText("_text_", "");
任何帮助将非常感激。我很难理解 Google Docs 中索引的概念。谢谢你。
你好。只是想让你知道我最终是如何实现这个的:
var trunc = text.split("\n"); \\where text is to be placed into the template
var index = b.getChildIndex(b.findText("foo").getElement().getParent()) + 1;
for (var j = (trunc.length - 1); j >= 0; j--)
if (trunc[j] != "") b.insertListItem(index, trunc[j]);
希望有帮助。它将元素向后推回彼此。