构建以PDF格式导出工作表的链接

时间:2017-06-09 12:01:10

标签: pdf google-apps-script google-sheets google-drive-api blob

我一直在尝试将特定工作表导出为PDF用于邮寄目的,并发现我需要它们采用特定格式。我四处寻找要使用的代码,最终找到了这个:https://issuetracker.google.com/issues/36761058#comment24

虽然我已经整合了很多我自己的代码,但它的很大一部分与我上面发布的链接相同,除了一件事情之外它的效果非常好。

如下面的代码所示,我选择的适合宽度为" false"因为我的一些床单有很多列。但是,我得到的PDF总是适合宽度格式,而不是实际尺寸,如果打印它几乎不可能读取。我试图调查一下,但到目前为止我的尝试都空手而归,所以我终于决定尝试在这里问。

     var url = ss.getUrl(); 


  //remove the trailing 'edit' from the url 
  url = url.replace(/edit$/,''); 

  //additional parameters for exporting the sheet as a pdf 
  var url_ext = 'export?exportFormat=pdf&format=pdf' + //export as pdf 
  //below parameters are optional... 
  '&size=A4' + //paper size 
  '&portrait=false' + //orientation, false for landscape 
  '&fitw=false' + //fit to width, false for actual size 
  '&sheetnames=true&printtitle=true&pagenumbers=true' + //hide optional headers and footers 
  '&gridlines=true' + //hide gridlines 
  '&fzr=false' + //do not repeat row headers (frozen rows) on each page 
  '&gid=' + spaceman.getSheetId();

  var token = ScriptApp.getOAuthToken(); 
    Logger.log("URL: " + url + url_ext);

  var response = UrlFetchApp.fetch(url + url_ext, { 
      "muteHttpExceptions": true,
      headers: { 
        'Authorization': 'Bearer ' +  token 
      } 
    }); 

如何解决我的这个问题的任何帮助或建议将不胜感激。当然,如果需要澄清某些内容或将其添加到原始帖子中,那么我很乐意这样做。

编辑:我一直坚持这一点,所以我还没有对剧本做过任何其他事情,只是今天再次测试了剧本,我突然想到了获得实际大小而不是fitw,所以我认为它可能是一个错误?

1 个答案:

答案 0 :(得分:0)

I am not sure if this is a bug- But if you access the URL direct, you can replicate your issue-

https://docs.google.com/spreadsheets/d/ADDYOURIDSSHERE/export?fitw=false&format=pdf