【发布时间】:2021-05-30 10:05:37
【问题描述】:
我正在尝试在 google docs 中编辑 Avery 模板,并通过 Google Apps Script 使用 google 表格中的信息填充它。
我已经用 body.replaceText 替换了文档中的占位符文本:
for (var i in data) {
var row = data[i];
var docid = DriveApp.getFileById(templateid).makeCopy().getId();
var doc = DocumentApp.openById(docid);
var body = doc.getActiveSection();
body.replaceText("%NAME%", row[0]);
body.replaceText("%ADD_LN1%", row[1]);
body.replaceText("%ADD_LN2%", row[2]);
标签模板是一个表格,每个部分都有一个绘图椭圆,我在文档中的椭圆绘图内插入了一个文本框我遇到的问题是我在文档的椭圆绘图中有一个文本框(我需要椭圆绘图知道标签将打印在哪里)
当我运行我的脚本时,绘图内的占位符文本不会改变,但表格内或页面上的任何测试通常都会更改为 Google 表格信息。
这是我正在使用的标签模板:Label Page 我已将 %NAME& 标记放在标题中、图像上以及格式化为在页面上冻结的图像上(以防万一发生任何变化!)
目的:我有一个包含客户姓名地址和自定义选项的 google 表格(要打印到标签上的特定安全信息) 然后我让这个脚本将信息插入到标签文档中,然后我可以打印它,而不必每次都从头开始手动创建它们。
如果没有办法获取文本/替换绘图形状文本中的文本,有没有办法可以将圆形用作指南表,以便我可以将数据传输为标准?
如果您需要更多信息,请告诉我,我很年轻也很困惑。
提前感谢您抽出宝贵时间阅读本文!
【问题讨论】:
-
很遗憾,在现阶段,Google Apps Script 的方法中还没有直接修改绘图中文字的方法。但是,当 Google 文档转换为 DOCX 格式时,可以修改图纸中的文本。但是当 Google 文档转换为 DOCX 格式时,图纸的颜色会发生变化。似乎这可能是由于 DOCX 格式或 Google 方面的规范。我为此道歉。即使更改了绘图的颜色,当您想要替换文本时,也有使用 Google Apps 脚本的解决方法。
-
所以基本上你想用你自己的值替换形状中的所有文本? @代达罗斯
-
@Tanaike 谢谢,有没有解决办法?
-
@ale13 是的,演示幻灯片“shape.getText().replaceAllText”的方式,但对于谷歌文档而不是谷歌幻灯片.. 对我来说似乎很陌生,没有类似的每种 google 文件类型中的命令
-
感谢您的回复。在当前阶段,除了我的第一条评论外,我不知道其他解决方法。这是因为我的技术不好。对此我深表歉意。
标签: google-apps-script google-sheets replace drawing google-docs