如何通过Apps Script提取Google幻灯片形状中的粗体文本列表
用Apps Script提取Google幻灯片中所有形状的粗体单词列表
实现步骤
- 打开目标Google幻灯片,点击顶部菜单栏的「扩展程序」→「Apps Script」,进入脚本编辑器。
- 删除编辑器里的默认代码,粘贴下面的脚本:
function extractBoldWordsFromSlides() { // 获取当前幻灯片演示文稿 const presentation = SlidesApp.getActivePresentation(); const slides = presentation.getSlides(); const boldWords = new Set(); // 用Set自动去重 // 遍历每张幻灯片 slides.forEach(slide => { // 获取幻灯片上的所有形状 const shapes = slide.getShapes(); shapes.forEach(shape => { const textRange = shape.getText(); const paragraphs = textRange.getParagraphs(); // 遍历每个段落 paragraphs.forEach(paragraph => { const runs = paragraph.getRange().getTextRuns(); // 遍历每个文本片段(文本片段是格式一致的连续文本) runs.forEach(run => { if (run.getTextStyle().isBold()) { // 提取文本,清理标点并分割成单词 const text = run.getText().trim(); // 用正则分割单词,处理标点(比如逗号、句号等) const words = text.split(/[^\w']+/).filter(word => word.length > 0); words.forEach(word => boldWords.add(word)); } }); }); }); }); // 将结果写入新的Google文档,方便复制 const doc = DocumentApp.create("幻灯片粗体单词列表"); const body = doc.getBody(); boldWords.forEach(word => body.appendParagraph(word)); // 弹出提示,显示文档链接 SlidesApp.getUi().alert(`提取完成!粗体单词已保存到文档:\n${doc.getUrl()}`); }
关键说明
- 脚本会遍历所有幻灯片的所有形状,包括文本框、内嵌文本的形状等。
- 使用
Set存储单词,自动去除重复的粗体单词。 - 用正则表达式分割单词,过滤掉标点符号和空字符串,确保提取的是有效单词。
- 最后会自动创建一个新的Google文档,把所有粗体单词逐行列出,直接打开文档就能复制整个列表。
运行方法
- 在脚本编辑器里点击工具栏的「运行」按钮(▶️)。
- 第一次运行会提示授权,按照页面提示完成权限验证(需要允许脚本访问你的幻灯片和文档)。
- 运行完成后,幻灯片会弹出提示框,里面有生成的文档链接,点击链接打开即可查看和复制粗体单词列表。
内容的提问来源于stack exchange,提问作者jGd
相关产品推荐
相关产品推荐

