【发布时间】:2020-08-13 18:38:50
【问题描述】:
我正在尝试使用 API 更新 Google Docs 文档中一系列文本的字体。我正在尝试仅更改字体,而不是字体大小或样式属性,例如粗体或斜体。因此,例如,如果我有一个仅包含以下文本作为内容的文档:
你好世界
我只想更改 Hello 一词的字体,但保持其大小不变,仍为粗体和斜体。
我尝试使用以下代码文档来完成此操作。batchUpdate 请求
{
"requests": [
{
"updateTextStyle": {
"range": {
"startIndex": 1,
"endIndex": 6
},
"textStyle": {
"weightedFontFamily": {
"fontFamily": "Times New Roman"
}
},
"fields": "weightedFontFamily"
}
}
]
}
结果是来自服务器的成功响应,但是当我检查文档时,我看到它更改了保持大小和斜体属性的字体,但没有保留粗体属性。我也曾使用 Google API Explorer 进行过尝试,并且可以重现相同的结果。
我的问题是如何在不丢失粗体的情况下更改字体?似乎它应该是可能的,因为它保持了斜体属性的完整性。为什么粗体不同?是bug吗?
我的目标是只更改字体而保留其他属性,因此我不想明确设置粗体或其他属性。我也不想事先确定属性并重置它们。这是更多的工作,并且会更慢,如果保持斜体,则不需要。
我可以使用 repeatCell.cell.userEnteredFormat.textFormat.fontFamily 请求在 Google 表格中毫无问题地执行非常类似的操作,并且它保持粗体和斜体。
提前感谢您提供任何见解或帮助。
【问题讨论】:
-
当
weightedFontFamily用作字段时,bold不会被修改。所以在当前阶段,我认为这可能是一个错误。向 Google 问题跟踪器报告如何? Ref 而且,我认为作为当前的解决方法,在使用weightedFontFamily之后设置粗体样式怎么样?对于这种情况,我深表歉意。 -
谢谢@Tanaike。我怀疑这可能是一个错误,但我通常会错误地确保我没有做错任何事情或首先错过任何事情。我使用该链接向 Google 报告了潜在的错误。
-
感谢您的回复。为了显示当前情况,将您的回复作为答案发布如何?这样,它对遇到相同问题的其他用户很有用。
标签: google-docs-api