如何更改每个脚本的“单元格填充”

时间:2017-08-17 13:25:00

标签: google-apps-script string-formatting google-docs-api cellpadding

我创建了一个非常简单的Google脚本,可以将表格添加到Google文档中:

var body = DocumentApp.getActiveDocument().getFooter();
body.clear();

var cells = [
['Cell1', 'Cell2', 'Cell3', 'Cell4'],
['Cell5', 'Cell6', 'Cell7', 'Cell8'],
];

var myT = body.appendTable(cells);

var style ={};
style[DocumentApp.Attribute.HORIZONTAL_ALIGNMENT] = DocumentApp.HorizontalAlignment.RIGHT;
style[DocumentApp.Attribute.FONT_FAMILY] = 'Verdana';

myT.setAttributes(style);
myT.setColumnWidth(0, 178.661);
myT.setColumnWidth(1, 106.9681);
myT.setColumnWidth(2, 74.6011);

脚本运行正常。现在我得到这个问题:

如何从表中更改“Cell Padding”? 我如何定义字段中的字体或颜色(例如第2行第2行)?

2 个答案:

答案 0 :(得分:1)

我没有找到任何方法来改变“Cell padding”,但这是一个“出路”:

  var body = DocumentApp.getActiveDocument().getFooter();
  body.clear();

  var cells = [
  ['', '', '', ''],
  ];

  var myT = body.appendTable(cells);

  var style ={};
  style[DocumentApp.Attribute.HORIZONTAL_ALIGNMENT] = DocumentApp.HorizontalAlignment.RIGHT;
  style[DocumentApp.Attribute.FONT_FAMILY] = 'Verdana';
  style[DocumentApp.Attribute.FONT_SIZE] = 6;

  myT.setAttributes(style);
  myT.setColumnWidth(0, 178.661);
  myT.setColumnWidth(1, 106.9681);
  myT.setColumnWidth(2, 74.6011);  

  //Col 1
  myT.getCell(0, 0).clear()
  var txt = myT.getCell(0, 0).editAsText();
  txt.setText("Text1\nText1\nText1");

  txt.setBold(0, 45, true);
  txt.setBold(91, 102, true);
  txt.setForegroundColor(150, txt.getText().length-1, '#82E600');

  //Col 2
  myT.getCell(0, 1).clear()
  var txt = myT.getCell(0, 1).editAsText();
  txt.setText("Text2\n\nText2\nText2");

  txt.setBold(0, 8, true);
  txt.setBold(52, 66, true);  

  //Col 3
  myT.getCell(0, 2).clear()
  var txt = myT.getCell(0, 2).editAsText();
  txt.setText("Text3\n\nText3");

  txt.setBold(0, 12, true);  

  //Col 4
  myT.getCell(0, 3).clear()
  var txt = myT.getCell(0, 3).editAsText();
  txt.setText("Text4\n\nText4");

  txt.setBold(0, 11, true);
}

答案 1 :(得分:0)

似乎没有像google forum中提到的细胞填充方法,但是您可以尝试他们建议的解决方法。要更改单元格颜色,有setBackGroundColor,要更改字体颜色,有setFontColor