谷歌应用程序脚本打印按钮

时间:2012-06-25 17:31:38

标签: google-apps-script

我已经进行了大约一个月的调查(这是我的第一个google脚本项目,我也应该提到它是一个基于Web的应用程序),我只剩下一些事情要做(创建一个打印按钮就是其中之一)。在我继续之前,我会给你一些关于调查的信息。共有6页(每个页面对应一个按钮 - 我使用按钮代替菜单,因为我最近发现了它...),一次只能查看1页。

问题是我需要创建打印按钮...它将打印所有页面。

我一直在寻找一个谷歌脚本示例大约3-4天,我找不到任何东西......如果我没有说清楚,请让我知道,我会尽量给予更多细节..

戴夫

3 个答案:

答案 0 :(得分:6)

    function printPdf() {
    SpreadsheetApp.flush();
    var ss = SpreadsheetApp.getActiveSpreadsheet();
    var sheet = ss.getActiveSheet();

    var gid = sheet.getSheetId();

    var pdfOpts = '&size=A4&fzr=false&portrait=false&fitw=true&gridlines=false&printtitle=false&shee        tnames=false&pagenum=UNDEFINED&attachment=false&gid='+gid;


    var row2 = 29;
    var printRange = '&c1=0' + '&r1=0' + '&c2=7' + '&r2='+row2; // B2:APn
    var url = ss.getUrl().replace(/edit$/, '') + 'export?format=pdf' + pdfOpts + printRange;

    var app = UiApp.createApplication().setWidth(200).setHeight(50);
    app.setTitle('Print this sheet');

    var link = app.createAnchor('Download PDF', url).setTarget('_new');

    app.add(link);

    ss.show(app);
     }

这是一个适合我的代码。它是从另一个线程修改的。

答案 1 :(得分:4)

我想您知道Google Apps脚本应用程序无法在您的应用程序内打印任何内容,因为它在Google服务器上而不是在您的计算机上运行。 电子表格和文档在其自己的环境中集成了打印实用程序,但您使用GAS开发的Web应用程序(和站点)没有此环境。

您的“打印按钮”可能会创建一个您可以轻松打印的PDF文档。

答案 2 :(得分:0)

您可以通过Google Script打印。阿米特·阿加瓦尔(Amit Agarwal)的post解释了如何:

关键是要确保您使用Google图书搜索设置了打印机。我有一台没有WiFi功能的打印机,但已连接到专门运行Google打印的过时Mac。