- Вы хотите поместить изображение с вашего Google Диска в таблицу Google.
- Вы хотите добиться этого с помощью скрипта Google Apps.
Если я понимаю правильно, как насчет этого ответа? Пожалуйста, подумайте об этом как об одном из нескольких возможных ответов.
Шаблон 1:
В этом шаблоне изображение помещается с использованием =IMAGE("URL")
.
Когда =IMAGE("URL")
используется, изображение требуется для общего доступа. Поэтому, пожалуйста, поделитесь изображениями с общедоступным доступом как On - Anyone with the link
.
А также, пожалуйста, измените конечную точку следующим образом.
С:
https://drive.google.com/open?id=###
на:
https://drive.google.com/uc?export=download&id=###
Шаблон 2:
Если вы не хотите публиковать изображения, как насчет этого шаблона? В этом шаблоне изображение помещается в виде большого двоичного объекта без общего доступа.
Здесь, пожалуйста, проверьте следующий пример сценария.
Пример сценария:
var fileId = "###"; // Please set the file ID of the image.
var sheet = SpreadsheetApp.getActiveSheet();
var blobSource = DriveApp.getFileById(fileId).getBlob();
var image = sheet.insertImage(blobSource, 1, 1);
image.setWidth(100).setHeight(100);
sheet.setColumnWidth(1, 100).setRowHeight(1, 100);
- При запуске скрипта изображение помещается в ячейку «А1». И размер изображения изменяется до 100 х 100 пикселей. Затем размер строки и столбца изменяется для размера изображения.
- Это простой пример сценария. Поэтому, пожалуйста, измените это для вашей реальной ситуации.
Ссылки:
Если я неправильно понял ваш вопрос, и это не было нужное вам направление, извиняюсь.
Добавлено:
Из вашего ответа было обнаружено, что размер изображения превышает размер ограничения (1,048,576 pixels^2
) Ссылка Причина вашего текущего заключается в следующем.
В этом случае, чтобы поместить изображение, требуется изменить размер изображения. В следующем примере сценария изображение помещается путем изменения размера изображения. Для этого я использовал библиотеку скриптов Google Apps. Поэтому , пожалуйста, установите его в редакторе сценариев .
Пример сценария:
var fileId = "###"; // Please set the file ID of the image.
var sheet = SpreadsheetApp.getActiveSheet();
var blobSource = DriveApp.getFileById(fileId).getBlob();
var obj = ImgApp.getSize(blobSource);
var height = obj.height;
var width = obj.width;
if (height * width > 1048576) {
var r = ImgApp.doResize(fileId, 512);
blobSource = r.blob;
}
var image = sheet.insertImage(blobSource, 1, 1);
image.setWidth(100).setHeight(100);
sheet.setColumnWidth(1, 100).setRowHeight(1, 100);
- В этом примере сценария, когда размер изображения превышает
1,048,576 pixels^2
, размер изображения изменяется и помещается в электронную таблицу. - Это простой пример сценария. Поэтому, пожалуйста, измените его для вашей реальной ситуации.
Ссылки: