Google Apps脚本是否支持使用HTML服务使用base64编码的图像?我正在尝试使用base64编码将图像添加到HTML页面,但它们不会显示在最终页面中.
我试图使用的HTML是:
<img src="data:'+contentType+';base64,'+encoded+'"/>
Run Code Online (Sandbox Code Playgroud)
当我在HTML服务呈现之前记录html内容时,它显示为:
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUh.....(base64 string)/>
Run Code Online (Sandbox Code Playgroud)
这在JSFiddle和普通HTML中工作正常,但在Apps脚本中,图像不显示.在呈现的页面上查看源代码时,图像标记显示如下:
<img src="null">
Run Code Online (Sandbox Code Playgroud)
有没有其他方法可以将base64编码的图像添加到页面?我可以将图像作为blob获取,但我认为没有办法直接将HTML添加到HTML内容中.
我想将Google Doc文件另存为pdf与Google Drive当前文件相同的文件夹中。我知道我可以将文件下载为 . pdf,但是我必须将其上传到同一Google Drive文件夹中。我试图跳过上传步骤。
我已经创建了一个脚本来完成所有这些,但我无法将图像和绘图包含在生成的pdf.
这是我的代码:
function onOpen() {
// Add a custom menu to the spreadsheet.
var ui = DocumentApp.getUi();
var menu = ui.createAddonMenu();
menu.addItem('Save As PDF','saveToPDF')
.addToUi();
}
function saveToPDF(){
var currentDocument = DocumentApp.getActiveDocument();
var parentFolder = DriveApp.getFileById(currentDocument.getId()).getParents();
var folderId = parentFolder.next().getId();
var currentFolder = DriveApp.getFolderById(folderId);
var pdf = currentDocument.getAs('application/PDF');
pdf.setName(currentDocument.getName() + ".pdf");
// Check if the file already exists and add a datecode if …Run Code Online (Sandbox Code Playgroud) 我想将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);
Run Code Online (Sandbox Code Playgroud)
上面的代码首先从Gmail邮件中创建HTML中的Blob,并使用getAs()函数将其转换为PDF.但是,HTML中的图像不能在PDF中找到.关于如何获得这些图像的任何想法将不胜感激.关于如何将Gmail邮件转换为PDF的任何其他想法也是受欢迎的.
我已经看到了几个关于从 Blob 创建带有彩色背景示例的 PDF 的类似问题,但没有一个答案解决“背景颜色问题”,而且我无法让生成的 PDF 具有任何背景颜色。
我按照这个例子(在 Google Apps Script 中从 HTML 创建 PDF 并包含图像 - 图像未显示)并将图像包含在 pdf 中,但背景颜色不在 pdf 中。
function htmlToPDF() {
var html = "<h1>Hello world</h1>"
+ "<p>This is just a paragraph"
+ "<p style='color:red;'>I am red</p>"
+ "<p style='color:blue;'>I am blue</p>"
+ "<p style='font-size:50px;'>I am big</p>"
+ "<table style='border-collapse: collapse; width: 698px; height: 115px; background-color: #C5D9F1;' border='0' cellpadding='10'>"
+ "<tbody>"
+ "<tr>"
+ "<td style='padding: 5px;background-color:powderblue;' nowrap='nowrap'><strong>Bold with background-color:</strong></td>"
+ "</tr>"
+ "</tbody>" …Run Code Online (Sandbox Code Playgroud)