Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/spring-boot/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google apps script 使用Google应用程序脚本将HTML web应用程序表转换为PDF_Google Apps Script - Fatal编程技术网

Google apps script 使用Google应用程序脚本将HTML web应用程序表转换为PDF

Google apps script 使用Google应用程序脚本将HTML web应用程序表转换为PDF,google-apps-script,Google Apps Script,每一个我有HTML网页应用,我已经转换成HTML表格电子表格现在我想把这个HTML网页应用表转换成PDF。如何做到这一点 这是我的密码 index.html <html> <head> <script type="text/javascript" src="https://www.google.com/jsapi"></script> <script type="text/javascript"> google.load("visu

每一个我有HTML网页应用,我已经转换成HTML表格电子表格现在我想把这个HTML网页应用表转换成PDF。如何做到这一点

这是我的密码

index.html

  <html>
<head>
<script type="text/javascript" src="https://www.google.com/jsapi"></script>
<script type="text/javascript">
google.load("visualization", '1', {packages:['table']});
google.setOnLoadCallback(drawTable);
   function drawTable() {
   var query = new google.visualization.Query(
     'https://docs.google.com/spreadsheets/d/1w5kqFmt1yclKVDdasujf-
  moxjX3QOVsyDyP7DIcF2u0/edit#gid=0');

  query.send(handleQueryResponse);
    }

  function handleQueryResponse(response) {
   if (response.isError()) {
     alert('Error in query: ' + response.getMessage() + ' ' + 
  response.getDetailedMessage());
     return;
 }

    var data = response.getDataTable();
  var table = new 
  google.visualization.Table(document.getElementById('table_div'));
 var options = {'title':'Bass Naming',
                  'width':'600',
                  'height':'400'};


   table.draw(data, options);
   var tabUri = table.getLinkUrl();

    }  

  </script>

  <title>Data from a Spreadsheet</title>
   </head>

  <body>
   <div>My Sheet</div>
  <div id="table_div"></div>
 <div>
  <h3> click here the below button to send the Table as PDF to mail :</h3>
   <button id='mail' onclick="myFunction()">Send to Mail</button>  
  </div>
 </body>
</html>

在code.gs中添加以下功能,以PDF附件的形式邮寄表格

function exportAsPdf(submittedBy) {
  var file = Drive.Files.get('1w5kqFmt1yclKVDdasujf-moxjX3QOVsyDyP7DIcF2u0');
  var url = file.exportLinks['application/pdf'];
  var token = ScriptApp.getOAuthToken();
  var response = UrlFetchApp.fetch(url, {
    headers: {
      'Authorization': 'Bearer ' +  token
    }
  });

 MailApp.sendEmail({ 
      to:Session.getActiveUser().getEmail(),
      subject:"Charts for Rent Analyser",
      htmlBody: "PFA",
      attachments:[response.getBlob().setName("Charts for Rent Analyser.pdf")],
     });  
}
另外,请确保从“高级谷歌服务””启用驱动器服务,并从“谷歌API控制台”启用驱动器API

有关详细代码,请参阅以下链接


为什么要为看似相同的问题创建第二个问题?(可能重复)是的,没有人回答我之前的问题我认为问题不清楚,所以我明确表示我需要的是@Pierre Marie Richard那么你应该考虑编辑或删除你之前的问题,以避免重复。我已经删除了我之前的帖子谢谢,关于此解决方案的任何建议,请Ear Ritz,感谢您的代码。通过此操作,我可以获得整个excel转换为pdf,但我只想将要转换为pdf的HTML表转换为pdf。HTML表和电子表格列之间的区别是什么?
function exportAsPdf(submittedBy) {
  var file = Drive.Files.get('1w5kqFmt1yclKVDdasujf-moxjX3QOVsyDyP7DIcF2u0');
  var url = file.exportLinks['application/pdf'];
  var token = ScriptApp.getOAuthToken();
  var response = UrlFetchApp.fetch(url, {
    headers: {
      'Authorization': 'Bearer ' +  token
    }
  });

 MailApp.sendEmail({ 
      to:Session.getActiveUser().getEmail(),
      subject:"Charts for Rent Analyser",
      htmlBody: "PFA",
      attachments:[response.getBlob().setName("Charts for Rent Analyser.pdf")],
     });  
}