2013-03-28 89 views
1

服務器上的圖像文件,我有一個圖像中的dataurl格式,如:如何從dataurl

data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAMCAgMCAgMDAwMEAwME…iiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigD/2Q== 

我需要這個字符串在JavaScript轉換爲可直接複製到空白另一個字符串JPG文件,以便它可以被用戶查看。
任何想法如何實現這一目標?

+0

你需要顯示它或創建一個文件? – Superlandero 2013-03-28 05:51:04

+0

創建一個文件。 @ jclandero23 – 2013-03-28 06:01:16

+0

是[這個線程](http://stackoverflow.com/a/5100158/2133379)你想要做什麼? – metadept 2013-03-28 06:12:12

回答

2

要顯示它您可以使用src屬性:

<img src="data:image/png;base64,R0lGODlhUAAPAKIAAA+g4JADs=" width="80" height="80" /> 

要生成,你需要使用畫布元素的文件:

例子:

<html> 
    <head></head> 
    <body> 
     <canvas id="c"></canvas> 
     <script type="text/javascript" src="canvas2image.js"></script> 
     <script type="text/javascript" src="baseg4.js"></script> 
     <script type="text/javascript"> 

      var canvas = document.getElementById("c"); 
      var ctx = canvas.getContext("2d"); 

      var image = new Image(); 
      image.src = "data:image/png;base64,iVBORw0KG............5CYII%3D"; 
      image.onload = function() 
      { 
       ctx.drawImage(image, 0, 0); 
       var foo = Canvas2Image.saveAsPNG(canvas); 
      }; 
      var img = canvas.toDataURL("image/png"); 
     </script> 
    </body> 
</html> 

並保存圖像和東西...您可以找到一種方法將畫布轉換爲此鏈接中的文件:

http://www.nihilogic.dk/labs/canvas2image/

+0

ctx.drawImage(data,0,0)中存在typeError; – 2013-03-28 06:15:58

+0

我在帖子上做了一些修改!現在試試! = D現在適合我! =) – Superlandero 2013-03-28 16:50:16

2

如果你希望用戶可以能夠下載該文件,並保存在某個地方它自己的計算機上,試試這個:

document.location.href = "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQAB…"; 

Download data url file,如果這是你想要做什麼。

+1

我不想下載它。 – 2013-03-28 06:29:55