google script doc to pdf调整行大小

时间:2015-01-30 00:44:09

标签: google-apps-script google-docs-api

我有一个用作模板的文档,网址为:https://docs.google.com/document/d/1Ng00Sw0V-3_htLF2-SyPj895g_V9bi1mKQc1LOaHPNY/edit?usp=sharing

我在提交表单时使用脚本并将其导出为pdf

function testExport() {
   var pdf = DocumentApp.openById(docTemplate).getAs("application/pdf");
  DriveApp.createFile(pdf);
};

但导出的链接看起来像https://drive.google.com/file/d/0B_YrT5Ue-LAvUllyQ0ZpbkRodVU/view?usp=sharing

表之间的行大小似乎增加了,整体质量看起来很糟糕,有没有办法解决它?当我将doc文件下载为pdf时,它看起来非常好。

1 个答案:

答案 0 :(得分:1)

Document.getAs()使用与Google Docs UI略有不同的转换器。您可以使用File.exportLinks中公开的Drive API内置的转换功能来进一步了解。以下示例使用Drive Advanced Service进行转换并保存结果。

function exportAsPdf(documentId) {
  var file = Drive.Files.get(documentId);
  var url = file.exportLinks['application/pdf'];
  var token = ScriptApp.getOAuthToken();
  var response = UrlFetchApp.fetch(url, {
    headers: {
      'Authorization': 'Bearer ' +  token
    }
  });
  var contents = response.getBlob();
  contents.setName(file.title + '.pdf');
  DriveApp.createFile(contents);
}