html5实现安卓的手写功能,html5 canvas手写字代码(兼容手机端)(示例代码)
html5 canvas手写字代码(兼容手机端)
画板实验
清 空
生成图片
var canvas,board,img;
canvas = document.getElementById(‘myCanvas‘);
img= document.getElementById(‘img‘);
canvas.height = 300;
canvas.width = 300;
board = canvas.getContext(‘2d‘);
var mousePress = false;
var last = null;
function beginDraw(){
mousePress = true;
}
function drawing(event){
event.preventDefault();
if(!mousePress)return;
var xy = pos(event);
if(last!=null){
board.beginPath();
board.moveTo(last.x,last.y);
board.lineTo(xy.x,xy.y);
board.stroke();
}
last = xy;
}
function endDraw(event){
mousePress = false;
event.preventDefault();
last = null;
}
function pos(event){
var x,y;
if(isTouch(event)){
x = event.touches[0].pageX;
y = event.touches[0].pageY;
}else{
x = event.offsetX+event.target.offsetLeft;
y = event.offsetY+event.target.offsetTop;
}
// log(‘x=‘+x+‘ y=‘+y);
return {x:x,y:y};
}
function log(msg){
var log = document.getElementById(‘log‘);
var val = log.value;
log.value = msg+‘
‘+val;
}
function isTouch(event){
var type = event.type;
if(type.indexOf(‘touch‘)>=0){
return true;
}else{
return false;
}
}
function save(){
//base64
var dataUrl = canvas.toDataURL();
img.src = dataUrl;
}
function clean(){
board.clearRect(0,0,canvas.width,canvas.height);
}
board.lineWidth = 1;
board.strokeStyle="#0000ff";
canvas.onmousedown = beginDraw;
canvas.onmousemove = drawing;
canvas.onmouseup = endDraw;
canvas.addEventListener(‘touchstart‘,beginDraw,false);
canvas.addEventListener(‘touchmove‘,drawing,false);
canvas.addEventListener(‘touchend‘,endDraw,false);
html5实现安卓的手写功能,html5 canvas手写字代码(兼容手机端)(示例代码)相关推荐
- 安卓通过SurfaceView类实现手写功能(上)
1 SurfaceView类简介 1.1 SurfaceView类 SurfaceView类的全称是android.view.SurfaceView,派生自andriod.view.View.Surf ...
- 安卓通过SurfaceView类实现手写功能(下)
2.5 处理手写动作 可以通过SurfaceView类的派生类来实现触屏(手写)动作的处理.也可以直接重写MainActivity类的onTouchEvent()方法来处理手写动作.当MainActi ...
- DroidPilot V2.1 手写功能特别版
庆祝为国内某知名安卓设备厂商定制的DroidPilot V2.1 手写功能版发布,我们特别制作了这集视频,欢迎观看:http://v.youku.com/v_show/id_XNDk4Mzg2NTAw ...
- wpf 切换搜狗输入法英文_搜狗输入法全新升级手写功能,中英数字自由写,告别切换丨本周新闻...
搜狗AI合成主播雅妮 为您带来搜狗本周新闻播报 新 闻 原 文 .01. 2019搜狗全年营收超80亿人民币,创历史新高 近期,搜狗公布了2019年第四季度及全年未经审计的财务报告.财报显示,2019 ...
- 联想笔记本那些有手写功能_联想发YOGABOOK笔记本 全触控键盘能手写很炫
腾讯数码讯(周硕)9月21日,联想正式在国内发布了此前在IFA首次亮相的全新Yoga系列二合一笔记本新品.这一代Yoga 5 Pro笔记本最大的特点是采用了4K分辨率超窄边框设计,看起来极简美观.而Y ...
- JavaScript进阶必会的手写功能
JavaScript进阶的必要性 无论是学习react还是vue,它们都是js的应用框架.剥去他们的壳子看到的始终是js,所以作为一个前端大厨必须要熟练掌握好js这个大勺,才能烧出一顿好菜 无论是自我 ...
- 有道云笔记android手写,有道云笔记iPad版升级 新增手写功能
近日,有道云笔记iPad版发布重大更新,新版增加的手写功能使得用户的笔记记录速度再次大幅提升.伴随此次更新,有道云笔记iPad版编辑器也进行了全面升级.新版编辑器基于iOS5系统特性进行了重新开发,可 ...
- JavaScript进阶必会的手写功能(二)
JavaScript进阶必会的手写功能(一) 6. 手写浅拷贝 6.1 JavaScript数据类型分类 1. 简单数据类型: Number. String.Boolean.null.undefine ...
- 测试MBP的手写功能
现在使用MacBPro下的话手写功能.感觉不错. 下面就是界面了.
最新文章
- Dreamweaver 2020安装教程
- androidtabhost缓存_Android学习笔记(一):TabHost存放多个Activity
- 进程控制:进程的创建、终止、阻塞、唤醒和切换
- android8 通知呼吸灯_Android8.0及以上的Notification
- mysql 同一天多条记录只取第一条_MySQL面试高频100问(二)
- Xception总结
- 阶段5 3.微服务项目【学成在线】_day03 CMS页面管理开发_07-新增页面-前端-页面完善...
- 跟我一起写大虾网(第0天)
- 黑马java学习笔记4 强化部分 常见API
- 服务器节点数及系统数量,计算节点服务器数量16.docx
- python判断谁做了好事
- 六、Python文件操作
- python兔子繁殖问题
- 35岁以后的Android程序员出路在哪里?大牛最佳总结
- 两张显卡在win10上如何使用
- ubuntu20.04关闭内核自动更新
- 国庆节去哪浪?让 Python 帮你分析分析
- 机器学习有哪些应用?可以用来做什么?
- linux下查看已安装的软件与卸载,(转)linux下查看已安装的软件与卸载
- Markdown插入图片
热门文章
- vue层叠轮播slider插件
- 熟悉大数据存储基础(实验报告)
- 淘宝直播的“一哥”和“一姐”:当年有多卑微,今天就有多荣耀!
- Ettercap的基本使用
- 【Win10】Java开发环境搭建新手教程(图文)
- 搭建ELK日志服务器
- (转载)富人孩子和穷人孩子,差的真不仅仅是钱
- Spring+SpringMVC+Hibernate整合操作数据库 概述
- detour TopologyOptimization
- DEJA_VU3D - Cesium功能集 之 034-可视域分析(纯前端)完整版