您可以使用文本范围来编辑文本和设置文本样式,文本范围以
TextRange
类型。TextRange
表示形状或
。对形状或表格单元格调用 getText()
会返回
覆盖整个文本的文本范围。
如果您使用方法修改文字在形状中的调整方式,则任何自动调整设置 应用该形状的图形将被取消激活。
使用文本范围
文本范围有两个索引,用于分隔文本段
文本范围涵盖的以下对象:起始索引和结束索引。您可以确定
这些索引使用 getStartIndex()
和 getEndIndex()
函数。
如需读取文本范围的内容,请使用 asString()
或
asRenderedString()
函数。
如需检索文本范围内的子范围,请使用 getRange()
函数。
以下脚本在第一张幻灯片上创建了一个文本框,并设置其文本内容 更改为“Hello world!”。然后,它会检索仅跨越“Hello”的子范围。
形状或表格单元格返回的文本范围将始终覆盖整个文本, 即使已插入和删除文字也无妨。因此,上面的示例生成了 以下日志语句:
Start: 0; End: 13; Content: Hello world! Start: 0; End: 5; Content: Hello
插入和删除文本
您还可以使用 文本范围。
insertText()
和appendText()
可让您插入文本。setText()
会将文本范围的文本替换为提供的文本。clear()
可删除文本范围内的文本。
以下脚本演示了如何使用这些函数:
此脚本会在第一张幻灯片上创建一个文本框,并设置其文本内容。 更改为“Hello world!”。然后删除第 6 到 11 个字符(“world”)以及 插入文本“galaxy”索引 6。上面的示例生成 以下日志语句:
Start: 0; End: 14; Content: Hello galaxy!
搜索和替换
对演示文稿或页面使用 replaceAllText()
函数以执行全局
在整个演示文稿或特定页面上进行查找和替换。
TextRange 上的 find()
函数会返回
范围。它可以与 setText()
搭配使用,以执行“查找和替换”操作
。
段落、列表项和运行
TextRange
提供了可返回有用的文本实体集合的函数。
其中一些函数包括:
getParagraphs(),
:提供与文本范围重叠的所有段落。答 paragraph 是以换行符结束的一系列文本, “\n”。getListParagraphs(),
,用于返回当前文本范围内的列表项。getRuns(),
,用于提供与当前文本范围重叠的文本运行。答 text run 是一段文本,其中所有字符具有相同的文本 样式。
文本样式
文本样式决定了演示文稿中文本字符的呈现方式, 包括字体、颜色和超链接
文本范围的 getTextStyle()
函数提供一个 TextStyle
对象,用于
设置文本样式。TextStyle
对象涵盖与其父级 TextRange
相同的文本。
上面的示例首先在第一张幻灯片上创建了一个文本框,并设置其
更改为“Hello ”。然后,它会附加文本“world!”。新附加的文本
以粗体显示,关联到了 www.example.com
,并且其颜色已设置
变成红色。
读取样式时,如果范围包含多个值,该函数会返回 null 。因此,上面的示例会生成以下日志语句:
Text: Hello; Bold: false Text: world!; Bold: true Text: Hello world!; Bold: null
还有许多其他样式可以应用于文本。如需了解更多详情
可在 TextStyle
参考文档中找到。
段落样式
段落样式会应用于整个段落,包括文本对齐方式和行号等
间距。TextRange
中的 getParagraphStyle() 函数提供了一个 ParagraphStyle
对象,用于设置所有与父文本范围重叠的段落的样式。
以下示例在第一张幻灯片上创建了一个文本框,其中包含四个 然后居中对齐前三个段落。
列表样式
与 ParagraphStyle
类似,ListStyle
可用于设置所有段落的样式。
与父文本范围重叠。
上面的示例在第一张幻灯片上创建了一个文本框,其中包含四个段落: 第二个段落缩进一次,第三个段落缩进了 两次。然后,它会将列表预设应用于所有段落。最后,每个 会记录段落的嵌套级别。(段落的嵌套级别 段落文本前的制表符数量。)以上脚本会生成 以下日志语句:
Paragraph 1's nesting level: 0 Paragraph 2's nesting level: 1 Paragraph 3's nesting level: 2 Paragraph 4's nesting level: 0