【问题标题】:Page Number not displayed in footer for PDF generated by getAs('application/pdf)getAs('application/pdf) 生成的 PDF 的页码不显示在页脚中
【发布时间】:2020-11-02 19:21:41
【问题描述】:

我正在使用已经在各种线程中显示的代码,例如Google apps script getAs('application/pdf') layout

问题是导出的 PDF 不包含 url 导出参数中提到的页码。其余参数全部导出。

我的代码如下:

function createblobpdf(sheetName, pdfName) {
  var sourceSpreadsheet = SpreadsheetApp.getActive();
  var sourceSheet = sourceSpreadsheet.getSheetByName(sheetName);
  var url = 'https://docs.google.com/spreadsheets/d/' + sourceSpreadsheet.getId() + '/export?exportFormat=pdf&format=pdf' // export as pdf / csv / xls / xlsx
    +    '&size=A4' // paper size legal / letter / A4
    +    '&portrait=true' // orientation, false for landscape
    +    '&fitw=true' // fit to page width, false for actual size
    +    '&sheetnames=true&printtitle=false' // hide optional headers and footers
    +    '&pagenum=true&gridlines=false' // hide page numbers and gridlines
    +    '&fzr=false' // do not repeat row headers (frozen rows) on each page
    +    '&horizontal_alignment=CENTER' //LEFT/CENTER/RIGHT
    +    '&vertical_alignment=TOP' //TOP/MIDDLE/BOTTOM
    +    '&gid=' + sourceSheet.getSheetId(); // the sheet's Id

  var token = ScriptApp.getOAuthToken();

  // request export url
  var response = UrlFetchApp.fetch(url, {
    headers: {
      'Authorization': 'Bearer ' + token
    }
  });

  var theBlob = response.getBlob().setName(pdfName);

  return theBlob;
};

我试过以下参数pagenum=true & pagenumbers=true & pagenumber=true

请帮忙。

【问题讨论】:

  • 看起来像一个表格错误。您是否尝试过不同的答案:stackoverflow.com/a/57187650/555121
  • 我看到了那个答案,但是在那个答案中提到的参数在任何地方都找不到,所以不知道用我的值替换哪个 null。尝试以更简单的方式完成它。

标签: pdf google-apps-script google-sheets


【解决方案1】:

目前看来这个参数不起作用。

我在Google's Issue tracker 上发现了一个与此类似的问题,您可以点击星号获取更新。

问题跟踪器答案的更新:

官方不支持使用此方法将 Google 表格导出为 PDF。使用的参数未记录在案,如有更改,恕不另行通知。

目前,Drive API Files: export 是 Web UI 之外唯一受支持的导出方法。如果您希望在导出设置中获得更多粒度,请考虑提交功能请求。

【讨论】:

    【解决方案2】:

    终于我自己的问题得到了答案。现在显示页码,但不能同时显示任何文本,并且页码的位置固定在 PDF 的页面底部。

    要传递的参数是:

    '&pagenum=RIGHT
    

    其他参数可以是'LEFT','CENTER'

    在将 PDF 导出为 Drive API 时参数 '&pagenum=TRUE 不起作用,不接受 TRUE 作为页码的可识别参数。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-12-25
      • 1970-01-01
      • 2014-06-24
      • 1970-01-01
      • 1970-01-01
      • 2018-09-12
      相关资源
      最近更新 更多