我正在尝试将 Google 电子表格保存为 pdf 文件。虽然下面的代码有效,但保存的 pdf 文件中的字体大小很小。可以通过以下方式更改电子表格中的字体大小:
var cell = ts.getRange('A1:E7');
cell.setFontSize(12);
但最终,在保存的 PDF 中,字体大小要小得多。下面的代码完成了我想要做的事情,但字体大小问题除外。有什么建议么?谢谢。
function savePDF() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var ts = ss.getSheetByName('common');
var cell = ts.getRange('A1:E7');
cell.setFontSize(12);
var url = Drive.Files.get(ss.getId()).exportLinks['application/pdf'];
var sheetID=ts.getSheetId();
url = url + '&size=letter' + //paper size
'&portrait=true' + //orientation, false for landscape
'&fitw=true' + //fit to width, false for actual size
'&sheetnames=false&printtitle=false&pagenumbers=false' + //hide optional
'&gridlines=false' + //false = hide gridlines
'&gid='+sheetID+
'&fzr=false'+ //do not repeat row headers (frozen rows) on each page
'&top_margin=0.30'+ //All four margins must be set!
'&bottom_margin=5.00 '+
'&left_margin=5.00'+
'&right_margin=0.00'+
'&horizontal_alignment=RIGHT'+
'&vertical_alignment=BOTTOM';
var token = ScriptApp.getOAuthToken();
var response = UrlFetchApp.fetch(url, { headers: {'Authorization': 'Bearer ' + token}}).getBlob();
DriveApp.getFolderById('URL ID is here').createFile(response).setName('testPDf'); //save the PDDF in Drive
}
如果您删除边距或减少
left_margin
- 您可以设置更大的字体。
请注意,
12
并不大 - 您可能需要设置更大的字体大小。
此外,请确保正确调整列宽。
转到
File
-> Print
并选择 PDF printer
作为输出。这将使其与您在浏览器中看到的内容相同。
不确定这是否适用于所有平台,但它适用于 Windows 和 Android(尽管我可能记错了打印机 PDF 技巧)。