2013-02-01 61 views
0

我正在使用filepicker.io將現有文件(FPFile)導出到給定目標。 我使用現有的FPFile作爲一種小型臨時文件,因此導出很快。然後,在導出完成後,我試圖回寫剛剛導出的文件(base64編碼)。 問題是,在我寫入數據後,圖像不可見。該圖像不會在Firefox,Chrome或IE中顯示。 我實際上可以在Photoshop中打開圖像,它顯示正常,所以我知道數據正在寫入。在寫入文件後,文件似乎有點出錯。也許我只是在做一些愚蠢的事情。 這裏是我的代碼:Filepicker.io - base64解碼圖像不可查看

var fpfile = { url: 'https://www.filepicker.io/api/file/ermKMZgVSu2GCEouu4Lo', 
    filename: this.curFile.name, mimetype: 'image/jpeg', isWriteable: true}; 

    filepicker.exportFile(
    fpfile, 
    function(FPFile){ 
     var data = canvas.toDataURL('image/jpeg'); 
     writeData(FPFile, data); 
    } 
); 

    function writeData(file, data){ 
    filepicker.write(file, data, 
     { 
     base64decode: true 
     }, 
     function(FPFile){ 
     console.log("Write successful:", FPFile.filename); 
     }, 
     function(FPError) { 
     console.log(FPError.toString()); 
     }, 
     function(progress) { 
     console.log("Loading: "+progress+"%"); 
     } 
    ); 
    } 

回答

1

當您使用toDataURL電話,你有前綴,例如

data:image/png;base64 

這需要做的base64解碼

之前從圖像的實際內容剝離
+0

當然!謝謝! –

+0

也許你可以檢查'''data:image/png; base64'''和''data:image/jpeg; base64'''默認?我只是花了一些時間試圖調試這一個:) –