Вставить картинку в таблицу Google Docs
Мне нужно с помощью Google App Script вставить в таблицу Google Docs (не Google Sheets) картинку. Таблица создана заранее и состоит из одной ячейки для картинки. Не знаю поможет ли это, но вот мой изначальный код. Он не вставляет именно в таблицу а просто в документ. Заранее спасибо!
function onOpen() {
var ui = DocumentApp.getUi();
ui.createMenu('Custom Menu')
.addItem('First item', 'menuItem1')
.addToUi();
}
function menuItem1() {
var fileId = '1YDA3MTuIvrZD4wOgOAJE1NiLY_q9oHKu';
var ss = DocumentApp.getActiveDocument();
var img = DriveApp.getFileById(fileId).getBlob();
ss.getBody().insertImage(0, img);
}
Ответы (1 шт):
Автор решения: contributorpw
→ Ссылка
Я бы предпочел добавлять картинку в параграф, как бы странно это ни звучало.
function run() {
const image = DriveApp.getFileById('1nVNdbt9SY42c-A30X5iSK4RaMcKCk2pt');
const paragraph = DocumentApp.getActiveDocument()
.getBody()
.getTables()[0] // в первую таблицу
.getRow(0) // в первую строку
.getCell(1) // во вторую ячейку
.getChild(0) // с нулевым индексом всегда будет `Paragraph`
.asParagraph(); // The paragraph in a specific cell
paragraph.insertInlineImage(0, image.getBlob());
}
Paragraph - единственный класс, кроме Body, который умеет почти все.
Обратите внимание, что этот метод не меняет размер картинки. Основная идея по изменению размера картинки тут.