Google 幻灯片 API : 添加形状和居中对齐文本

Google Slide API : Add Shape and Center Text Align

如何使用 Google 幻灯片 API 在形状 InsertTextRequest 中设置文本对齐中心?

    requests.add(new Request()
            .setCreateShape(new CreateShapeRequest()
                    .setObjectId(elementRandomString)
                    .setShapeType("RECTANGLE")
                    .setElementProperties(new PageElementProperties()
                            .setPageObjectId(this.pageObjectId)
                            .setSize(new Size()
                                    .setHeight(ptHeight)
                                    .setWidth(ptWidth))
                            .setTransform(new AffineTransform()
                                    .setScaleX(1.0)
                                    .setScaleY(1.0)
                                    .setTranslateX(xLocation)
                                    .setTranslateY(yLocation)
                                    .setUnit("PT")))));

    if (shapeModel.textModel != null && shapeModel.textModel.textValue != null) {
        requests.add(new Request()
                .setInsertText(new InsertTextRequest()
                        .setObjectId(elementRandomString)
                        .setText("BOOK")));
    }

最后一行,我们设置文本;想让文字居中。

下面的资源中没有指定。

资源:

https://developers.google.com/slides/how-tos/add-shape

Java Insert Text Request

无法使用 InsertTextRequest 设置 alignment。 您可以使用 UpdateParagraphStyleRequest message in a call to batchUpdate.

更新段落样式下的 alignment

示例请求正文:

{
  "requests": [
    {
      "updateParagraphStyle": {
        "objectId": "gc9072fb39b_0_5",
        "style": {
          "alignment": "CENTER"
        },
        "fields": "alignment"
      }
    }
  ]
}

适用Java代码:

requests.add(new Request()
        .setUpdateParagraphStyle(new UpdateParagraphStyleRequest()
                .setObjectId(elementRandomString)
                .setFields("*")
                .setStyle(new ParagraphStyle()
                        .setAlignment("CENTER"))));

输出:

之前:

之后:

参考文献: