В вашей ситуации, когда используется alignOnPage()
, сначала измените размер графика, используя setWidth()
и setHeight()
.Затем используйте alignOnPage(SlidesApp.AlignmentPosition.CENTER)
.Таким образом, вы можете поместить диаграмму с измененным размером в центр слайда.
Когда alignOnPage()
запускается до изменения размера диаграммы, используется размер до изменения размера.Поэтому после изменения размера диаграммы после корректировки отображается нежелательная позиция.
Модифицированный скрипт:
С:
slide.insertSheetsChart(chart2)
.setLeft(0)
.alignOnPage(SlidesApp.AlignmentPosition.CENTER)
.setWidth(300)
.setHeight(185);
До:
slide.insertSheetsChart(chart2)
.setWidth(300)
.setHeight(185)
.alignOnPage(SlidesApp.AlignmentPosition.CENTER);
Примечание:
- Если вы хотите использовать
setLeft()
для этого измененного сценария, добавьте его после alignOnPage()
.
Если это не тот результат, который вы хотите, яизвините.
Добавлено:
О вашем дополнительном вопросе, а как насчет следующего примера сценария?В этом примере выполняется следующий поток.
- Установка ширины и высоты диаграммы.
- Установка положения сверху и слева.
Образецскрипт:
var s = SlidesApp.getActivePresentation();
var w = 300;
var h = 185;
var ph = s.getPageHeight();
var pw = s.getPageWidth();
slide.insertSheetsChart(chart2)
.setWidth(w)
.setHeight(h)
.setTop(ph - h)
.setLeft(pw - w);