2014-11-21 64 views
0

如何將畫布另存爲Spring Rest webservice中的圖像,畫布包含基於用戶輸入的圖形。我需要自動將圖形保存爲圖像(我使用canvas.toDataUrl()獲取圖像數據)到服務器。服務器具有彈簧REST Web服務。如何將畫布保存爲Spring Rest中的圖像webservice

在此先感謝。

回答

0

試試這個〜

// jsp 
function saveCanvasImage(){ 
    var imageData = myCanvas.toDataUrl(); 

    $.ajax({ 
     url:'/controller/path/saveCanvasImage', 
     data:{imageBase64: imageData}, 
     type: 'post', 
     dataType: 'json', 
     timeout: 10000, 
     async: false, 
     error: function(){ 
      console.log("WOOPS"); 
     }, 
     success: function(res){ 
      if(res.ret==0){ 
       console.log("SUCCESS"); 
      }else{ 
       console.log("FAIL : " + res.msg); 
      } 
     } 
    }); 
} 


// java(controller) 
@RequestMapping(value = "/controller/path/saveCanvasImage", method = RequestMethod.POST) 
@ResponseBody public Map<String,Object> saveCanvasImage(
     @RequestParam(value="imageBase64", defaultValue="")String imageBase64) { 
    Map<String,Object> res = new HashMap<String, Object>(); 

    File imageFile = new File("/home/data/canvasImage.png"); 
    try{ 
     byte[] decodedBytes = DatatypeConverter.parseBase64Binary(imageBase64.replaceAll("data:image/.+;base64,", "")); 
     BufferedImage bfi = ImageIO.read(new ByteArrayInputStream(decodedBytes)); 
     ImageIO.write(bfi , "png", imageFile); 
     bfi.flush(); 
     res.put("ret", 0); 
    }catch(Exception e){ 
     res.put("ret", -1); 
     res.put("msg", "Cannot process due to the image processing error."); 
     return res; 
    } 

    return res; 
} 

好運

相關問題