我创建了一个Telegram机器人来将照片(当前为.jpg文件类型)发送到不同的命令。我之所以使用Google Apps脚本,是因为我的照片存储在Google云端硬盘中,所以我认为最好使用表格来跟踪我的照片及其网址。
但是,该机器人发送的照片被裁剪了。我通读了API,但没有发现指定所需照片尺寸的任何内容。有人可以说明一下吗?如何防止Telegram裁剪照片?或者,这是我的照片的首选尺寸,这样它就不会被裁剪吗?
更多信息:我将照片保存在google驱动器文件夹中,并手动创建了共享链接,并将其保存在电子表格中。假设我在ActiveSpreadsheet的单元格A1中有一个照片网址,我的代码如下所示
photo_url = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet().getRange("A1").getValue();
sendPhoto(chatID,photo_url)
function sendPhoto(id,photo_url) {
var API_TOKEN = my_API_token;
var payload = {
'method': 'sendPhoto',
'chat_id': String(id),
'photo': photo_url,
}
var data = {
"method": "post",
"payload": payload
}
UrlFetchApp.fetch('https://api.telegram.org/bot' + API_TOKEN + '/', data);
}
您需要注意的格式photo_url
。
您可能正在使用getUrl()
方法生成的网址:
https://drive.google.com/file/d/GOOGLE_DRIVE_FILE_ID
这将发送裁剪的图像。
另一方面,使用以下url将发送未截断的图像:
https://docs.google.com/uc?id=GOOGLE_DRIVE_FILE_ID
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句