首页 > 解决方案 > 在 Google 文档中打开图片

问题描述

只是一点背景:您可能知道,如果您在 Google 驱动器中有一张图片,并且您尝试使用 Google Docs 打开它,Google 会尝试提取您图片中的文本 (OCR),并在新的图片旁边显示文本创建了谷歌文档文件。

我正在编写一个脚本,并且在该脚本中我想用 Google Docs 打开一个图像(带有一些文本)。

当我尝试通过以下代码执行此操作时,我只是一条错误消息,没有说明它失败的原因。

var file_url = file.getUrl();
try
{
    var doc = DocumentApp.openByUrl(file_url);
}catch (e) {
    Logger.log("Error Occurred: " + e.toString());
}

任何帮助,将不胜感激。

编辑1:这是一个实际场景。我有以下 .png 图像,我可以使用 Google Docs 打开它。

在此处输入图像描述

当我使用 Google Docs 打开时,我得到以下文档:

使用 Google Doc 打开 .png 图像后生成的文档。

有了这个 .png 文件的 url,我想通过我的脚本来完成这一切,这样我就可以得到 OCR 生成的文本。

标签: google-apigoogle-drive-apigoogle-docs-api

解决方案


  • 您想使用 Google Apps 脚本通过 OCR 将 PNG 文件转换为 Google 文档。

如果我的理解是正确的,那么这个修改呢?在此修改中,使用了 Drive API。

使用此脚本时,请在高级 Google 服务和 API 控制台启用 Drive API。你可以在这里看到这个。

修改后的脚本:

var fileId = "### file ID of PNG file ###";
var file = DriveApp.getFileById(fileId);
Drive.Files.insert(
  {title: file.getName(), mimeType: MimeType.GOOGLE_DOCS},
  file.getBlob(),
  {ocr: true}
);

笔记:

  • 当 PNG 文件的 URL 像https://drive.google.com/file/d/#####/view?usp=sharing时,#####是文件 ID。
  • 在此修改后的脚本中,创建的 Document 的文件名使用由fileId. 如果要使用其他文件名,请修改title: file.getName().

参考:


推荐阅读