Google Doc Api:下载内联对象

时间:2019-02-13 22:27:32

标签: google-api google-api-php-client google-api-client google-docs-api

我正在创建Google Doc to HTML转换器,我想使用Doc Api而不是使用Drive Api将其导出为HTML:

$service = new Google_Service_Docs($client);
$request = $service->documents->get($docId);

$elements = $request->getBody()->getContent();

$ elements是Google_Service_Docs_StructuralElement的数组

遍历段落>元素,如果有内联对象,则使用Google_Service_Docs_InlineObjectElement设置inlineObjectElement属性

问题是::如何获取Google_Service_Docs_InlineObjectElement的内容以将其保存为文件? 这个对象中只有一个inlineObjectId ...

1 个答案:

答案 0 :(得分:0)

我在 this blog post 上找到了解决方案。

基本上,所有内联元素都位于:

$inlineObjects = $request->getInlineObjects();

顺便说一句。我建议将“$request”重命名为“$document”

现在,通过 inlineObjectId,您可以获得所需的特定对象 - 在那里,您可以获得包含二进制内容的 contentUri

这里是 $inlineObjects 内容的截图,它是一个关联数组。关键是 inlineObjectId:

Screenshot of the Google_Service_Docs_InlineObject in var dumper