【问题标题】:Open an image in Google Docs在 Google 文档中打开图片
【发布时间】:2019-08-08 04:53:13
【问题描述】:

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

我正在编写一个脚本,我想在该脚本中使用 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 打开时,我得到以下文档:

Document generated after opening the .png image with Google Doc.

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

【问题讨论】:

  • 为了正确了解您的情况,能否请教一下您的问题? 1. 关于I would like to open an image (with some text) with Google Docs.,您要在Google Document 中插入图片吗?关于这个,你能提供一个你想要的样本结果吗? 2.var doc = DocumentApp.openByUrl(file_url);中的file_url是什么?
  • @Tanaike,我已经更新了我的问题以显示我需要实现的目标。 file_url 只是 Google Drive 中图像文件的 url。
  • 感谢您回复和更新您的问题。我提出了一个修改后的脚本。你能确认一下吗?如果我误解了您的问题,我深表歉意。

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


【解决方案1】:
  • 您希望使用 Google Apps 脚本通过 OCR 将 PNG 文件转换为 Google 文档。

如果我的理解是正确的,那么这个修改呢?本次修改使用Drive API。

使用此脚本时,请在高级 Google 服务和 API 控制台启用 Drive API。您可以在 here 上查看相关信息。

修改脚本:

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()

参考资料:

【讨论】:

  • @Sep 我的回答是否向您展示了您想要的结果?你能告诉我吗?这对我学习也很有用。如果这可行,与您有相同问题的其他人也可以将您的问题作为可以解决的问题。如果您对我的回答有疑问,我深表歉意。到时候,可以问一下你现在的情况吗?我想学习解决你的问题。
  • @Sep 有什么可以解决您的问题的吗?如果我的回答对您的情况没有用。我必须道歉并修改它。如果您能合作解决您的问题,我很高兴。我想考虑一下解决方案。
  • 您的答案只需修改一次,将GOOGLE_DOCS 替换为document :) 谢谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多