我可以通过搜索所有段落并查看每个段落使用的标题来获取文档大纲的内容。这可行,但并不理想。如果我从大纲中手动删除一个项目,它不会将该项目的标题更改为正常。因此,当我再次运行代码时,它将检测到被删除的项目仍是轮廓的一部分,因为它的标题与用于轮廓的标题匹配。
var searchHeading = DocumentApp.ParagraphHeading.HEADING4;
var paragraphs = getParagraphs();
return paragraphs.filter(function(paragraph) {
return (paragraph.header == searchHeading);
});
function getParagraphs() {
var paragraphs = DocumentApp.getActiveDocument().getBody().getParagraphs();
return paragraphs.map(function(p, index) {
return {
paragraph: p.getText(),
header: p.getHeading(),
id: index
};
});
}
是否有必要在不解析每个段落的情况下获取大纲的内容,并且不过滤其标题与特定标题匹配的内容,最好是通过API调用?
编辑:添加了getParagraphs()