如何仅替换textrun中的文本

2024-06-02 06:47:49 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在使用googleslidesapi自动更新一个演示文稿,其中有一些非常详细的表。我有一个有几个单元格的表格,每个单元格中有3行格式不同的行。例如,最上面的一行字体较大,第二行较小且为绿色,等等。由于此演示文稿应该每天使用我输入的数据自动更新,因此我确实需要根据文本运行长度而不是固定的开始索引和结束索引来设置请求(这些开始索引和结束索引每天都会随着文本的更新而变化,所以我不能每天手动编辑索引)

如何在TextRun中替换文本或逐行或逐段替换文本?你知道吗

我在这里添加一个图像。你可以看到在第一行我有一个大的粗体数字需要更新,在第二行我有3个项目需要更新。1是/是2。问题3。M/M我希望能够做到这一点,而不要求每个文本的大小相同。你知道吗

Screenshot of table in slide

这是我现在设置的批量更新请求。我只是不知道如何才能让范围始终在textRun内,而不是整个单元格。你知道吗

    reqs = [
{
  "deleteText": {
    "objectId": "g2f8579c174_1_6",
    "cellLocation": {
      "rowIndex": 1,
      "columnIndex": 1,
    },
    "textRange": {
        "type": "ALL",
    }
  }
},
{
  "insertText": {
    "objectId": "g2f8579c174_1_6",
    "cellLocation": {
      "rowIndex": 1,
      "columnIndex": 1
    },
    "text": "texttexttext",
    "insertionIndex": 0
  }
}

]


Tags: 数据文本编辑格式字体手动表格objectid
1条回答
网友
1楼 · 发布于 2024-06-02 06:47:49

我会读一读报告(或者演示文稿。获取或者演示文稿.pages.get),找到要更新的运行和索引,然后创建batchUpdate请求以根据需要更新这些运行。您可以使用InsertTextRequest添加新内容,然后使用DeleteTextRequest删除旧内容。它应该自动保留样式。你知道吗

相关问题 更多 >