2014-10-28 38 views
0

1)是否有Google appscript命令可以将.gDraw转换为.jpg?
2)是否可以将Google触发器设置为在.gdraw文件上执行此转换编辑?1)是否有Google Appscript命令可以将.gDraw转换为.jpg? 2)是否可以设置触发器对.gdraw文件编辑执行此转换?

1)我的答案到目前为止(在谷歌/伪代码)

function gDrawTO_jpeg(){ 
var gDrawFile = DriveApp.getFilesByID('gDraw_fileID') 
gDrawJpg = gDrawFile.getAs("image/jpg") // doesn't work due to current getAs() limits. 
gDrawPdf = gDrawFile.getAs("application/pdf");} //doesn't work due to known glitch, link below 

毛刺在谷歌转换文件PDF:https://code.google.com/p/google-apps-script-issues/issues/detail?id=3579

是否有可能是一个不起眼的blob函数解决方法?

2)到目前为止,我的回答是:

function triggerSet(){ 
ScriptApp.newTrigger('gDrawTO_jpeg') 
    .forDocument('gDraw_fileID') 
    .onOpen() 
    .create();//returns error on this line} 

只适用于谷歌文档/表格/表格,以gDraw的没有成功。有没有一个blob工作?

**作为对此问题的评论,对于gDrive/gDocs来说,使用标准或非Google格式(.doc /)自动保存文档/图纸/ gDraws的功能或选项将会非常棒。 xls/.jpg,他们手动有这个功能,但有很明显的优势,这是自动的)。

回答

0

使用您所喜欢的comment #22 in the apps script issue 3579中详述的解决方法。

重要:您必须启用高级服务驱动API为您的项目,并在开发者控制台的工作,周围的工作:

  1. 在脚本的项目进入菜单资源 - >高级谷歌 服务并开启Drive API服务。
  2. 单击高级 Google服务对话框底部的Developers Console链接,并在该处启用Drive API。

你做了下面的代码上面后,将让您的绘图为JPEG文件:

function gDrawTO_jpeg(){ 
    var gDrawFile = Drive.Files.get('your_draw_file_ID_here'); 
    var url = gDrawFile.exportLinks['image/jpeg']; 
    var token = ScriptApp.getOAuthToken(); 
    var response = UrlFetchApp.fetch(url, { 
    headers: { 
     'Authorization': 'Bearer ' + token 
    } 
    }); 
    var jpeg = response.getBlob(); 
    // save drawing as jpeg file to Drive, or do whatever you need to with the blob 
    DriveApp.createFile(jpeg); 
} 

至于你的问题的第二部分:无。 Google Draw不支持应用程序脚本(还)。

相关问题