我有一个长长的文本,上面有要通过Apps脚本添加到Google幻灯片的列表项。由于文本的长度和单个列表项的长度可能不同,因此我需要创建多个幻灯片以覆盖整个文本。
为此,我想执行以下操作:
但是,这不起作用:
var slides = SlidesApp.openById("...");
var pageHeight = slides.getPageHeight();
var stringList = ["Long text 1", "Long text 2", "Long text 3"];
var page = 0;
while (stringList.length > 0) {
var container = slides.getSlides()[page].getShapes()[0]; //some text box
container.getText().clear();
while (container.getHeight() < pageHeight && stringList.length > 0) {
container.getText().appendText(stringList.shift());
}
page++;
}
}
现在我遇到了问题,我没有找到任何方法来获取元素的 actual 高度(文本消耗)来检查文本是否仍然适合页面容器。该脚本将永远填充单个文本框,因为getHeight()
会忽略文本的高度。表格单元格随文本一起增长,但似乎只有它们的 minimumHeight 。
因此,我正在寻找一种将文本分成所需幻灯片的方法。您是否知道用于了解文本框或表格单元格中文本实际高度的任何属性,方法或其他方法?
当然,对于Google Doc来说,这根本没有问题,但是不幸的是,我还需要添加一些带有形状,背景等的样式,以了解为什么这不是一种选择。列表项来自Google电子表格,每项一行。
预先感谢您的任何想法。