gpt4 book ai didi

google-apps-script - 将 Blob 从 HTML 转换为 PDF 时无法复制图像

转载 作者:行者123 更新时间:2023-12-05 01:16:29 25 4
gpt4 key购买 nike

我想将 HTML 电子邮件转换为 PDF。我写了下面的一段代码。

      var txt = msgs[i].getBody();
/* We need two blob conversions - one from text to HTML and the other from HTML to PDF */
var blob = Utilities.newBlob(txt, 'text/html',"Test PDF");
Logger.log(txt);
var tempDoc = DocsList.createFile(blob);
var pdf = tempDoc.getAs('application/pdf');
pdf.setName('Email As PDF');
DocsList.createFile(pdf);

上面的一段代码首先从 Gmail 邮件的 HTML 中创建一个 Blob,并使用 getAs() 函数将其转换为 PDF。但是,在 PDF 中找不到 HTML 中的图像。任何有关如何获取这些图像的想法将不胜感激。
也欢迎任何关于如何将 Gmail 消息转换为 PDF 的替代想法。

最佳答案

有趣的问题。关于为什么这不起作用是有道理的 - PDF转换不会打扰“渲染”HTML以获取图像src。

我做了一个快速测试并确认 Data URI's (不需要单独的 HTTP 调用的内联图像)处理图像。

因此,一种hacky 解决方案可能是获取图像,然后将它们转换为数据 URI。这有一些缺点 - 很难找到这些图像(正则表达式会很脆弱或不全面),大量的 UrlFetch 调用(即使有一些缓存,大多数自动电子邮件发件人都会添加跟踪器,以便您最终重新获取相同的图像)和减缓。

转变 -
<img src="http://images.myserver.com/myimage.png..."/>
到(您也可以动态检查内容类型)-
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhE..."/>

关于google-apps-script - 将 Blob 从 HTML 转换为 PDF 时无法复制图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13570205/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com