我正在使用占位符形状和应用程序脚本将数据从谷歌电子表格合并到幻灯片演示文稿中,类似于这个例子 https://developers.google.com/slides/how-tos/merge.
我的合并运行良好。我遇到的第一个问题是文本不受包含它的形状的约束。如果文本不适合边界形状,它就会溢出:
如果我能够以某种方式以编程方式告知文本已溢出,那就不会是这样的问题。据我所知,虽然我只能得到边界形状的高度 https://developers.google.com/apps-script/reference/slides/shape#getHeight()。即使它现在“包含”在幻灯片上覆盖更大高度的文本,这也不会改变。我似乎无法获得实际文本的高度。
有什么办法可以知道高度是多少文本范围 https://developers.google.com/apps-script/reference/slides/text-range是,或者它已经溢出,以便我可以调整文本的某些功能(字体大小或实际文本的长度等),以便文本由文本框绑定?或者至少提醒用户文本已溢出。
与此等效的 PowerPoint 是文本范围.boundheight https://learn.microsoft.com/en-us/office/vba/api/powerpoint.textrange.boundheight如果这有助于描述我正在寻找的属性,那么我希望能够实现类似的属性AutoSize https://learn.microsoft.com/en-us/office/vba/api/powerpoint.textframe2.autosize特征。
将文本合并到幻灯片而没有某种方法使文本适合占位符形状对我来说似乎没什么用。
自 2021 年 1 月起,您可以在 Google 幻灯片编辑器中设置自动调整设置。
When you click inside shape, you can see new Auto-fit setting, set to "Do not autofit" by default:
您可以将其更改为“溢出时缩小文本":
或者另一种选择:“调整形状大小以适合文本":
更新(2021 年 7 月):有新内容autofit特性 https://developers.google.com/slides/api/reference/rest/v1/presentations.pages/shapes#autofit形状元素:
自动调整类型
形状的自动调整类型。如果自动调整类型是AUTOFIT_TYPE_UNSPECIFIED
,自动调整类型将从父占位符继承(如果存在)。该字段自动设置为NONE
如果发出的请求可能会影响其边界文本框中的文本适配。在这种情况下fontScale
被应用到fontSize
和lineSpacingReduction
被应用到lineSpacing
。这两个属性也重置为默认值。
字体比例- 只读
应用于形状的字体比例。对于具有以下形状的形状autofitType
NONE
or SHAPE_AUTOFIT
,该值为默认值 1。对于TEXT_AUTOFIT
,该值乘以fontSize
给出在编辑器中呈现的字体大小。
行距减少- 只读
应用于形状的行间距减小。对于具有以下形状的形状autofitType
NONE
or SHAPE_AUTOFIT
,该值为默认值 0。对于TEXT_AUTOFIT
,从该值中减去lineSpacing
给出在编辑器中呈现的行距。
P.S. autofitType
在文档中可能没有标记为只读,但似乎存在一个错误,目前阻止了一种简单的方法来设置它(设置为除NONE
), see https://issuetracker.google.com/issues/189153562#comment5 https://issuetracker.google.com/issues/189153562#comment5 and https://developers.google.com/apps-script/reference/slides/autofit https://developers.google.com/apps-script/reference/slides/autofit (just getAutofitType()
可用的)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)