HTML5 Canvas图片操作简单实例1
1.加载显示图片
<canvas id="canvasOne" class="myCanvas" width="500" height="500"></canvas>
<script>
var canvas = document.getElementById('canvasOne');
var ctx = canvas.getContext('2d');
//加载图片
var img = new Image();
img.onload = function () {
ctx.clearRect(0, 0, canvas.width, canvas.height);
ctx.drawImage(img, 0, 0, img.width, img.height);
}
img.src = '../images/1.jpg';
</script>
2.获取Canvas数据,显示到img标签
<canvas id="canvasOne" class="myCanvas" width="500" height="500"></canvas>
<img id="imgOne" />
<script>
var canvas = document.getElementById('canvasOne');
var ctx = canvas.getContext('2d');
//加载图片,显示当前图片到其他地方
var img = new Image();
img.onload = function () {
ctx.clearRect(0, 0, canvas.width, canvas.height);
ctx.drawImage(img, 0, 0, img.width, img.height);
//显示图片的部分内容到img图片标签
var imgOne = document.getElementById('imgOne');
imgOne.width = 1000;
imgOne.height = 600;
//图片内容显示当前画布显示的部分
imgOne.src = canvas.toDataURL('image/png');
}
img.src = '../images/1.jpg';
</script>
3.获取Canvas数据,显示到其他canvas中
<canvas id="target" width="200" height="100"></canvas>
<canvas id="canvasOne" class="myCanvas" width="500" height="500"></canvas>
<script>
var canvas = document.getElementById('canvasOne');
var ctx = canvas.getContext('2d');
var target = document.getElementById('target');
//加载图片
var img = new Image();
img.onload = function () {
ctx.clearRect(0, 0, canvas.width, canvas.height);
//图片缩小,显示
ctx.scale(0.5, 0.5);
ctx.drawImage(img, 0, 0, img.width, img.height); //获取缩小后的像素,显示到其他canvas
var imgData = ctx.getImageData(0, 0, 200, 100);
var ctxTwo = target.getContext('2d');
ctxTwo.putImageData(imgData, 0, 0);
}
img.src = '../images/1.jpg';
</script>
4.Canvas中图片的平铺操作
<canvas id="canvasOne" class="myCanvas" width="500" height="500"></canvas>
<script>
/***图片的背景显示***/
var canvas = document.getElementById('canvasOne');
var ctx = canvas.getContext('2d');
//加载图片
var img = new Image();
img.onload = function () {
ctx.beginPath();
ctx.rect(0, 0, canvas.width, canvas.height);
ctx.scale(0.1, 0.1);
//平铺
//ctx.fillStyle = ctx.createPattern(img, 'repeat'); //水平方向 平铺
//ctx.fillStyle = ctx.createPattern(img,'repeat-x'); //垂直方向 平铺
//ctx.fillStyle = ctx.createPattern(img, 'repeat-y'); //禁用平铺
ctx.fillStyle = ctx.createPattern(img, 'no-repeat'); ctx.fill();
}
img.src = '../images/1.jpg';
</script>
更多像素处理:
http://www.cnblogs.com/tianma3798/p/4264857.html
HTML5 Canvas显示本地图片实例1、Canvas预览图片实例1
HTML5 Canvas图片操作简单实例1的更多相关文章
- 导出HTML5 Canvas图片并上传服务器功能
这篇文章主要介绍了导出HTML5 Canvas图片并上传服务器功能,文中通过实例代码给大家介绍了HTML5 Canvas转化成图片后上传服务器,代码简单易懂非常不错,具有一定的参考借鉴价值,需要的朋友 ...
- html5 canvas 实现一个简单的叮当猫头部
原文:html5 canvas 实现一个简单的叮当猫头部 html5的canvas是很强大的,今天也是温习了一下之前的基础知识,然后学着做了一个简单的小案例.虽然在这一块几乎空白,但还是乐于尝试... ...
- mysqli数据库操作简单实例
mysqli数据库操作简单实例 代码 结果
- 怎样用HTML5 Canvas制作一个简单的游戏
原文连接: How To Make A Simple HTML5 Canvas Game 自从我制作了一些HTML5游戏(例如Crypt Run)后,我收到了很多建议,要求我写一篇关于怎样利用HTML ...
- [译]怎样用HTML5 Canvas制作一个简单的游戏
这是我翻译自LostDecadeGames主页的一篇文章,原文地址:How To Make A Simple HTML5 Canvas Game. 下面是正文: 自从我制作了一些HTML5游戏(例如C ...
- html5 canvas 圆形抽奖的实例
年底没啥,抽空学习了canvas,写了个html5抽奖的代码,造了个轮子,有用的童鞋可以拿走. 其中,canvas.onclick触发抽奖行为,概率可以在core.lottery()函数上添加,美化也 ...
- 【Bugly干货分享】一起用 HTML5 Canvas 做一个简单又骚气的粒子引擎
Bugly 技术干货系列内容主要涉及移动开发方向,是由Bugly邀请腾讯内部各位技术大咖,通过日常工作经验的总结以及感悟撰写而成,内容均属原创,转载请标明出处. 前言 好吧,说是“粒子引擎”还是大言不 ...
- 一起用HTML5 canvas做一个简单又骚气的粒子引擎
前言 好吧,说是"粒子引擎"还是大言不惭而标题党了,离真正的粒子引擎还有点远.废话少说,先看demo 本文将教会你做一个简单的canvas粒子制造器(下称引擎). 世界观 这个简单 ...
- HTML5 Canvas ( 图片绘制 转化为base64 ) drawImage,toDataURL
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
随机推荐
- 13 hbase连接
Configuration conf=new Configuration(); String zookeeper=""; String clientport="; Str ...
- [转]PageRank算法
原文引自: 原文引自: http://blog.csdn.net/hguisu/article/details/7996185 感谢 1. PageRank算法概述 PageRank,即网页排名,又称 ...
- 你好,C++(14)如何描述“一个名叫陈良乔,年龄33岁,身高173厘米,体重61.5千克的男人”——3.8 用结构体类型描述复杂的事物
3.8 用结构体类型描述复杂的事物 利用C++本身所提供的基本数据类型所定义的变量,只能表达一些简单的事物.比如我们可以用int类型定义nAge变量表示人的年龄,用string类型定义strName ...
- javascript之闭包深入理解(二)
在上一节中,详细理解了作用域链和垃圾回收机制,似乎这两点跟闭包关系不大,但是仔细想一想就会发现,其实不然.这一节将通过上一部分的说明详细理解闭包.请看代码: function createCompar ...
- 向null地址copy数据和不断改变指针指向
#define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<stdlib.h> #include<string. ...
- asp.net2.0app开发。
asp.net app 网站开发:http://www.cnblogs.com/TerryFeng/archive/2009/05/15/1457731.html 在OPERA或M3GATE中设置编码 ...
- Android中的webview的进度条
<application android:icon="@drawable/hunqin" android:label="@string/app_name" ...
- 在keil中使用printf()函数的要点
在keil中printf默认是向串口中发送数据的,所以,如果应用该函数,必须先初始化串口,否则可能引起死机的情况,并且在printf之前应该先将TI置位,摘抄原因如下: 1.printf函数是调用pu ...
- 8.2.1.2 How MySQL Optimizes WHERE Clauses MySQL 优化WHERE 子句
8.2.1.2 How MySQL Optimizes WHERE Clauses MySQL 优化WHERE 子句 本节讨论优化用于处理WHERE子句, 例子是使用SELECT 语句,但是相同的优化 ...
- cf509B Painting Pebbles
B. Painting Pebbles time limit per test 1 second memory limit per test 256 megabytes input standard ...