js中处理:
var image = document.getElementById("imageid");
image.src = canvas.toDataURL("image/png");
image则会显示canvas所画的图片
java中处理:
将canvas.toDataURL()得到的数据传入java中,想得到png格式的图片:
String base64data = "data:image/png;base64,***图像编码数据**";
String imageData=base64data.split(",")[1]; // 将data:image/png;base64等编码格式信息去掉
BASE64Decoder decoder = new BASE64Decoder();
byte[] imgBytes = decoder.decodeBuffer(imageData);
for (int i = 0; i < imgBytes.length; ++i) {
if (imgBytes[i] < 0) {// 调整异常数据
imgBytes[i] += 256;
}
}
//保存特定的目录下面
String imagepath ="D:";
System.out.println("imagepath="+imagepath);
File dir=new File(imagepath);
if(!dir.exists()){
dir.mkdirs();
}
String filename=new Date().getTime()+".png";
File decFile = new File(imagepath+"\\"+filename);
String dd=decFile.getAbsolutePath();
if(decFile.exists()){
decFile.delete();
}
decFile.createNewFile();
FileOutputStream ops = new FileOutputStream(decFile);
ops.write(imgBytes, 0, imgBytes.length);
ops.flush();
ops.close();
} catch (IOException e) {
e.printStackTrace();
}
在d盘中会得到相应的图片