2013-02-20 34 views
0

我想創建一個谷歌文檔(我很想創建它爲HTML,如果這可以這樣工作),然後將該文檔導出爲PDF發送爲電子郵件附件。這裏是我的基本結構DocsList.createFile有時創建空白或損壞的PDF

var docName = "test"; 

var doc = DocumentApp.create(docName); 
doc.appendParagraph("Hello World"); 

DocsList.createFile(docName, doc.getAs('application/pdf').getBytes(), 'application/pdf'); 

但是,這表現很奇怪。有時它會創建一個空白PDF文件,有時候是一個不能打開的消息「對不起,我們目前無法生成文檔視圖,請稍後重試。」

任何幫助,將不勝感激。

回答

1

在將文件轉換爲pdf之前,保存並關閉文件很重要。如果您不撥打saveAndClose(),您的更改仍將處於待定狀態。只是做

doc.saveAndClose(); 
DocsList.createFile(doc.getAs('application/pdf')).rename(docName); 

根據我的經驗,處理blob而不是字節數組的文檔已經更清潔。所以這應該乾淨地按預期工作。

+0

這創建了一個可打開的pdf,但它是空白的。我確實驗證了它創建的Google文檔包含內容。 – Greg 2013-02-20 01:47:15

+0

我明白了。我會更新我的答案。 – 2013-02-20 01:51:21

+0

'saveAndClose()'有訣竅。謝謝! – Greg 2013-02-20 17:36:00