【问题标题】:How to align text in google docs table cell如何对齐谷歌文档表格单元格中的文本
【发布时间】:2014-03-05 14:46:29
【问题描述】:

我通过脚本创建了一个谷歌文档,并希望通过此代码向其中插入表格:

  var row1 = "some city"
  var row2 = "some text"
  var rowsData = [[row1, row2]];
  var table = body.appendTable(rowsData);
  table.setBorderWidth(0);
  style[DocumentApp.Attribute.BOLD] = true;
  style[DocumentApp.Attribute.HORIZONTAL_ALIGNMENT] = DocumentApp.HorizontalAlignment.CENTER;
  table.setAttributes(style);

我希望单元格中的所有文本都是粗体并居中显示。但我看到只应用了粗体属性。 我尝试添加一些脚本

 var cell1 = table.getCell(0, 0);
  var cell2 = table.getCell(0, 1);
  cell1.setAttributes(style);
  cell1.editAsText().setAttributes(style);

但没有效果。

请告诉我如何正确地将单元格中的文本居中!

【问题讨论】:

    标签: google-apps-script google-docs


    【解决方案1】:

    文本对齐不能应用于“table-cell”项目,它只能应用于“段落”项目。 要从“表格单元”中获取“段落”,您需要执行以下操作:

    var cellStyle = {};
    cellStyle[DocumentApp.Attribute.HORIZONTAL_ALIGNMENT] = DocumentApp.HorizontalAlignment.CENTER;
    tabel.getRow(0).getCell(1).getChild(0).asParagraph().setAttributes(cellStyle)
    

    (感谢 Stefan van Aalst his answer

    【讨论】:

      【解决方案2】:

      在 5 年前提出这个问题时,可能还行不通。今天,您可以使用 GUI。选择表格(或有问题的单元格),右键单击您的选择并选择“表格属性”。弹出窗口应该有点像这样:

      您会在那里找到垂直和水平对齐选项。

      【讨论】:

        【解决方案3】:

        我相信你想使用 .setAlignment 而不是 .setAttribute 或 style[]。

        cell1.setAlignment(DocumentApp.HorizontalAlignment.CENTER);
        

        【讨论】:

        • 没有这样的方法...有一个 .setVerticalAlignment(DocumentApp.VerticalAlignment.CENTER);但不适用于水平对齐。
        猜你喜欢
        • 2018-10-27
        • 2010-12-14
        • 2012-11-07
        • 2018-04-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多