html 圖片保存到本地,html5 保存圖片到服務器本地

1 js獲取canvas base64(所需格式)圖片數據

var imgData= mycanvas.toDataURL("image/png");

如果要提供給用戶下載用

window.location.href=imgData ;

2 js將數據通過hidden類型input傳給jsp處理

index.html

function renum(){

document.getElementById("hp").value= "abc";

document.forms.myForm.submit();

}

t.jsp

String sDate =(String)request.getParameter("fuck");

out.println("comeon--->"+sDate);

%>

微信本身瀏覽器不支持form表單提交,被sb騰訊閹割了

可以用如下替代方案get在傳輸數據量上有問題,IE對URL長度的限制是2083字節(2K+35)。對於其他瀏覽器,如Netscape、FireFox等,理論上沒有長度限制,其限制取決於操作系統的支持,微信瀏覽器大概也在2k左右,粗略算了下png圖片大概能傳30*30-40*40之間,跟沒有差不多吧,蛋疼

var mycanvas = document.getElementById("canvas");

var imaged = mycanvas.toDataURL("image/png");

var url = "http://192.168.1.103:8080/html5Paint/html5/t.jsp?hid="+imaged;

window.open(url)

關於微信瀏覽器可以使用另外的方法,不在頁面中寫form直接用js實現post

function post(URL, PARAMS) {

var temp = document.createElement("form");

temp.action = URL;

temp.method = "post";

temp.style.display = "none";

for (var x in PARAMS) {

var opt = document.createElement("textarea");

opt.name = x;

opt.value = PARAMS[x];

// alert(opt.name)

temp.appendChild(opt);

}

document.body.appendChild(temp);

temp.submit();

return temp;

}

//調用方法 如

post('pages/statisticsJsp/excel.action', {html :prnhtml,cm1:'sdsddsd',cm2:'haha'});

這樣就可以在微信頁面中使用post無限制傳數據了

3 jsp中使用java解碼base64,並生成相應格式的圖片文件

特殊說明:canvas生成的數據格式如下"data:image/png;base64,iVBORw0KGg........."

需要把data:image/png;base64,截掉,后面的數據就可以直接轉二進制並生成圖片

sun.misc.BASE64Decoder找不到的問題,在工程配置中刪除jre再重新引入jre就可解決

傳不了代碼,就傳圖

7258ae09127c6ec306c867144cda8336.png

6daf73d0bbe4385cb517ae34de95b95d.png

79dfadb4d98ff3d033e72343835824b6.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值