Есть ли ограничение на размер BLOB-объекта для insertImage на листе (Google App Script)? - PullRequest
0 голосов
/ 23 мая 2019

Я вставляю изображения с моего диска Google в листы с помощью идентификаторов.

Однако при выполнении кода всегда выдается:

К сожалению, произошла ошибка сервера. Пожалуйста, подождите немного и попробуйте снова. (строка XX, файл "TestCodeV1.0")

Где строка XX имеет код для insertImage (blobSource, column, row) .

Я протестировал FILE_ID различных изображений на моем GDrive, и он работает для изображений, меньших или равных 151 239 байт , ( img.getSize ). Для изображений больше этого просто выдает ту же ошибку.

Я попытался добавить задержку между getFileByID и insertImage , но это не помогло (хотя это может быть 'все еще загружающая блоб изображения' тип ошибки).

Я пытался увидеть, связано ли это с количеством пикселей изображения или шириной / высотой.

Кажется, единственным фактором является размер (151 239 байт)

var SPREADSHEET_URL = 'YOUR_SHEET_ID_HERE'
var SHEET_NAME= 'YOUR_SHEET_NAME_HERE'
var FILE_ID= 'YOUR_IMAGE_ID_HERE'

var ss = SpreadsheetApp.openById(SPREADSHEET_URL);
var sheet = ss.getSheetByName(SHEET_NAME);

var img = DriveApp.getFileById(FILE_ID).getBlob();
var image = sheet.insertImage(img, 1,1);

Я ожидал, что изображения будут легко вставлены в работу. Однако любое изображение размером более 147 КБ не удалось с ошибкой: "К сожалению, произошла ошибка сервера. Пожалуйста, подождите немного и попробуйте снова."

1 Ответ

2 голосов
/ 24 мая 2019

Решено Танаике - Найти полное объяснение ЗДЕСЬ

Основная информация

Изображения, которые вставляются с помощью insertImage () , должны иметь площадь пикселя меньше 1 048 576 px ^ 2

Некоторые примеры максимальных размеров в пикселях:

  • 1024 пикселей x 1024 пикселей
  • 2048 пикселей x 512 пикселей
  • 4096 пикселей x 256 пикселей
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...