image - Google Apps 脚本 - 将 base 64 图像源转换为图像文件
问题描述
这是一个图像标签示例,图像源为 base 64 数据。base 64 数据是笑脸。
<img src="data:image/png;base64,R0lGODlhDAAMAKIFAF5LAP/zxAAAANyuAP/gaP///wAAAAAAACH5BAEAAAUALAAAAAAMAAwAAAMlWLPcGjDKFYi9lxKBOaGcF35DhWHamZUW0K4mAbiwWtuf0uxFAgA7">
我想使用 base64 数据在 Google Drive 中创建图像文件。
我尝试了以下代码,该代码运行并创建了一个没有错误的文件,但它不会作为图像文件打开。
function createImageFileFromBase64() {
var data = 'R0lGODlhDAAMAKIFAF5LAP/zxAAAANyuAP/gaP///wAAAAAAACH5BAEAAAUALAAAAAAMAAwAAAMlWLPcGjDKFYi9lxKBOaGcF35DhWHamZUW0K4mAbiwWtuf0uxFAgA7';
var imageBlob = Utilities.newBlob(data, 'image/png');
var resource = {
title: 'AAA Test_Image',
mimeType: 'image/png'
}
var theReturn = Drive.Files.insert(resource,imageBlob );
Logger.log('file ID: ' + theReturn.id);
}
我的目标是在不对图像文件发出外部请求的情况下制作图像文件。我希望将图像数据“硬编码”到脚本中。
解决方案
使用通过解码 base64字符串创建的字节数组创建 blob :
var imageBlob = Utilities.newBlob(Utilities.base64Decode(data), 'image/png');
推荐阅读
- javascript - 如何获取点击的html链接的ID?
- python - 通过搜索相邻列来选择一列的内容
- spring-boot - Spring Boot Azure Functions 项目不适用于 Kotlin
- r - 在ggplot2中可视化的累积值
- microsoft-graph-api - 如何从 javascript sdk 或 graph sdk 获取 Microsoft Teams 中的会议详细信息?
- python - 气流一次重新运行一个 dag 实例
- javascript - 使用 React.Context 注入 UI 组件是个好主意吗?
- c - 可以将 RAW 套接字绑定到 ip:port 而不是接口吗?
- amazon-web-services - terraform 12 计数 date_template 不起作用
- macos - 工作流程中 Opencv 出现 CMAKE 错误(github 操作)