当前位置:首页 » 文件管理 » html5上传图片裁剪

html5上传图片裁剪

发布时间: 2022-08-28 02:44:14

❶ 如何使用html5实现拍照上传应用

单纯HTML5没法做 需要后台技术 你可以看下关于.NET JSP php 最新的NODEJS
必定有很成熟的调用摄像头拍照的接口或库。
你可能需要系统学习的有
HTML5
CSS3
JAVASCRIPT JQUERY等
选择一项你喜欢的后台语言。

❷ canvas图片剪切问题,求html5大神指点

看你描述应该是
图片缩放
导致的问题,
假设你图片是
300*300的
画布是150*150
你将图片放到画布上已经缩小一倍了
你移动
sx
sy的时候
实际计算得将倍数算进去
比如你距离画布左边是10像素
实际上你获取图片的时候应该是
10*2=20
这样猜才对

❸ 如何使用HTML5实现拍照上传应用

在HTML5规范的支持下,WebApp在手机上拍照已经成为可能。在下面,我将讲解Web App如何用手机进行拍照,显示在页面上并上传到服务器。
1、 视频流

HTML5 The Media Capture
API提供了对摄像头的可编程访问,用户可以直接用getUserMedia获得摄像头提供的视频流。我们需要做的是添加一个HTML5的Video标
签,并将从摄像头获得视频作为这个标签的输入来源(请注意目前仅Chrome和Opera支持getUserMedia。补充:请使用Opera支持HTML5的新版本,如果是Chrome,版本需为Chrome 18.0.1008+,并使用about:flags来开启WebRTC,请看下图)。

[html] view plain
<video id="video" autoplay=""></video>
<script>
var video_element = document.getElementById('video');
if (navigator.getUserMedia) { // opera should use opera.getUserMedia now, chrome use webkitGetUserMedia
navigator.getUserMedia('video',success, error);
}
function success(stream) {
video_element.src =stream;
}
</script>

视频流
2、 拍照
拍照功能,我们采用HTML5的Canvas实时捕获Video标签的内容,Video元素能作为Canvas图像的输入,这一点很棒。主要代码如下:
[html] view plain
<script>
var canvas =document.createElement('canvas');

var ctx = canvas.getContext('2d');
var cw = vw;
var ch = vh;
ctx.fillStyle = "#ffffff";
ctx.fillRect(0, 0, cw, ch);
ctx.drawImage(video_element, 0, 0, vvw,vvh, 0,0, vw,vh);
document.body.append(canvas);
</script>

3、 图片获取
下面我们要从Canvas获取图片数据,其核心思路是用canvas的toDataURL将Canvas的数据转换为base64位编码的PNG图像,类似于“data:image/png;base64,xxxxx”的格式。
[html] view plain
var imgData =canvas.toDataURL("image/png");
因为真正图像数据是base64编码逗号之后的部分,所以我们实际服务器处理的图像数据应该是这部分,我们可以用两种办法来获取。
第一种:是在前端截取22位以后的字符串作为图像数据,例如:
[html] view plain
var data = imgData.substr(22);
如果要在上传前获取图片的大小,可以使用:
[html] view plain
var length = atob(data).length;// atob decodes a string of data which has been encoded using base-64 encoding
第二种:是在后端获取传输的数据后用后台语言截取22位以后的字符串。例如PHP里:
[html] view plain
$image = base64_decode( str_replace('data:image/jpeg;base64,', '',$data);
4、 图片上传
在前端可以使用Ajax将上面获得的图片数据上传到后台脚本。例如使用jQuery时:
[html] view plain
$.post('upload.php',{ 'data' : data } );
在后台我们用PHP脚本接收数据并存储为图片。
[html] view plain
function convert_data($data){
$image = base64_decode( str_replace('data:image/jpeg;base64,', '',$data);
save_to_file($image);
}
function save_to_file($image){
$fp = fopen($filename, 'w');
fwrite($fp, $image);
fclose($fp);
}
请注意,以上的解决方案不仅能用于Web App拍照上传,并且你可以实现把Canvas的输出转换为图片上传的功能。这样你可以使用Canvas为用户提供图片编辑,例如裁剪、上色、涂鸦的画板功能,然后把用户编辑完的图片保存到服务器上。

Canvas涂鸦功能
在HTML5的驱动下,Web App与Native App之间是否还有不可逾越的鸿沟?我将会在3月23日网络开发者大会上现场来解答这个问题,敬请期待。

❹ HTML5图片导入和编辑功能的实现

让用户在画板上拖拽、缩放、多图组合操作的话,需要用到Canvas或者SVG的编程,给元素绑定拖拽等鼠标事件

❺ 微信上的html5页面是怎么制作出来的

你好,微信上的HTML页面一般是用工具做出来的,很少有开发的H5案列,最常见是翻页H5,自由度比较低,只能修改图片换换位子,而专业工具自由度比较高,可以很灵活的设计H5,epub360在专业工具中上手难度适中,值得大家尝试下。

❻ html5+js怎么实现手机头像上传,可裁剪

抱歉
这个已经不属于HTML+JS的内容了。
最常用的是.NET和PHP,这两个都有现成的模版可以下载。

❼ html5+上传图片时有没有截图的插件(手机端的)

按住电源键(关机键)的同时按主屏幕(HOME)键,听见"咔嚓"一声,就代表截图成功了。
另外还有用截图软件截图的,你可以下载一款在你手机上最好用的截图软件,安装后就可以使用截图功能了。答题不易,互相帮助,手机提问的朋友在客户端右上角评价点满意即可.
如果你认可我的回答,请点击采纳为满意回答按钮!

❽ HTML5 做的移动 web app 怎样实现从本地上传图片

当然可以,不过只能从相册里传

❾ 如何使用HTML5实现利用摄像头拍照上传功能

HTML5技术支持WebApp在手机上拍照,显示在页面上并上传到服务器。这是手机微博应用中常见的功能,当然你也可以在其它类型应用中适当使用此技术。
1、 视频流
HTML5 的 The Media Capture(媒体捕捉) API 提供了对摄像头的可编程访问,用户可以直接用 getUserMedia(请注意目前仅Chrome和Opera支持)获得摄像头提供的视频流。我们需要做的是添加一个HTML5 的 Video 标签,并将从摄像头获得的视频作为这个标签的输入来源。
<video id=”video” autoplay=”"></video>
<script>
var video_element=document.getElementById(‘video’);
if(navigator.getUserMedia){ // opera应使用opera.getUserMedianow
navigator.getUserMedia(‘video’,success,error); //success是回调函数,当然你也可以直接在此写一个匿名函数
}
function success(stream){
video_element.src=stream;
}
</script>
此时,video 标签内将显示动态的摄像视频流。下面需要进行拍照了。
2、 拍照
拍照是采用HTML5的Canvas功能,实时捕获Video标签的内容,因为Video元素可以作为Canvas图像的输入,所以这一点很好实现。主要代码如下:

var canvas=document.createElement(‘canvas’); //动态创建画布对象
var ctx=canvas.getContext(’2d’);
var cw=vw,ch=vh;
ctx.fillStyle=”#ffffff”;
ctx.fillRect(0,0,cw,ch);
ctx.drawImage(video_element,0,0,cw,ch,0,0,vw,vh); //将video对象内指定的区域捕捉绘制到画布上指定的区域,可进行不等大不等位的绘制。
document.body.append(canvas);

3、 图片获取
从Canvas获取图片数据的核心思路是用canvas的toDataURL将Canvas的数据转换为base64位编码的PNG图像,类似于“data:image/png;base64,xxxxx”的格式。
var imgData=canvas.toDataURL(“image/png”);

这样,imgData变量就存储了一长串的字符数据内容,表示的就是一个PNG图像的base64编码。因为真正的图像数据是base64编码逗号之后的部分,所以要让实际服务器接收的图像数据应该是这部分,我们可以用两种办法来获取。
第一种:是在前端截取22位以后的字符串作为图像数据,例如:
var data=imgData.substr(22);

如果要在上传前获取图片的大小,可以使用:
var length=atob(data).length; //atob 可解码用base-64解码的字串

第二种:是在后端获取传输的数据后用后台语言截取22位以后的字符串(也就是在前台略过上面这步直接上传)。例如PHP里:
$image=base64_decode(str_replace(‘data:image/jpeg;base64,’,”,$data);

4、 图片上传
在前端可以使用Ajax将上面获得的图片数据上传到后台脚本。例如使用jQuery时可以用:
$.post(‘upload.php’,{‘data’:data});

在后台我们用PHP脚本接收数据并存储为图片。
function convert_data($data){
$image=base64_decode(str_replace(‘data:image/jpeg;base64,’,”,$data);
save_to_file($image);
}
function save_to_file($image){
$fp=fopen($filename,’w');
fwrite($fp,$image);
fclose($fp);
}

以上的解决方案不仅能用于Web App拍照上传,也可以通过Canvas的编辑功能函数提供图片编辑,例如裁剪、上色、涂鸦、圈点等功能,然后把用户编辑完的图片上传保存到服务器上。
在还在不断补充修正的HTML5的驱动下,Web App与Native App之间的距离将越来越小。在可预见的不远的未来,越来越多老的和新的开发项目必将会迁移到WEB应用上来。
相关规范:
The MediaCapture API:http://www.w3.org/TR/media-capture-api/
Canvas:http://dev.w3.org/html5/2dcontext/

❿ html5中怎么截取图片显示

PS中有一个蒙版功能,就是只显示某个矩形范围之内的图像,用html实现蒙版功能就相当于是截图了

热点内容
ftp命令下载文件更新时间不变 发布:2024-10-13 08:15:48 浏览:131
为什么虚幻引擎无法编译该项目 发布:2024-10-13 08:11:04 浏览:593
我的世界mc脑洞君的服务器 发布:2024-10-13 07:40:25 浏览:304
怎么配置nfc门禁卡 发布:2024-10-13 07:38:53 浏览:47
微信加粉脚本 发布:2024-10-13 07:33:54 浏览:415
苹果手机卡怎么装到安卓机 发布:2024-10-13 07:33:53 浏览:575
linuxvarlog 发布:2024-10-13 07:33:19 浏览:846
安卓版98c哪里下载 发布:2024-10-13 07:12:31 浏览:121
安卓提醒怎么关闭不了 发布:2024-10-13 07:01:09 浏览:922
安卓怎么设置左滑返回上一级 发布:2024-10-13 06:29:26 浏览:277