我有一个Google DOC。 DOC已嵌入Google Diagrams。我正在编写Google脚本以将文档内容传输到工作表。该脚本通过文档“body's children”来识别它是段落还是表格,如果是段落,则提取文本,在线绘图或在线图像。
现在,在DOCS中,图表被表示为图表的图像,而不是图表本身。 Google文档会执行生成图像的请求(例如https://docs.google.com/a/mydomain.com/drawings/d/sDanx1eRvHChcrvgj1IIdCQ/image?w=719&h=573&rev=1346&ac=1)(顺便说一句可怕的解决方案,但这是一个不同的主题)。这种图像作为持久文件存储在“某处”,并通过另一个请求(例如文件系统:https://docs.google.com/persistent/docs/documents/1DlxAjdWZAVOkGvq1CZvsbEpxBNs8bDCPW1972UKfbxU/drawing/sDanx1eRvHChcrvgj1IIdCQ?zx=xxuxts66tny4)合并到文档中。 也不是图像的常规直接URL。
'= IMAGE'功能和其他Google“对话框屏幕”(如在文档中从网址插入图片)无法解决这些问题。使用'= IMAGE'的偏好是图像保留在单元格中。
此外,INLINE IMAGE类型似乎不提供甚至获取这些URL的方法,也不提供Diagram的文档ID。 即使我可以获取URL,直接使用URL或“获取”它们从它们创建Blob,我只看到它们对InsertImage方法有用,这会使图像与单元格分离。
显然,即使使用带有insertImage(blob)生成Image的URL,也无法说服务器出错。
有什么想法吗?
答案 0 :(得分:0)
如果您的嵌入图片有链接,则可以使用getLinkUrl()。 Google Apps脚本无法直接获取嵌入式绘图的网址。
我还没有对此进行过测试,我认为它应该可行。
由于Google表格功能IMAGE需要可公开访问的图片的网址,因此当您准备将在电子表格中使用的Google绘图时,
然后,当您将内容从Google文档转移到Google电子表格时,您可以使用getLinkUrl()获取该网址,并将其添加为IMAGE的参数