博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
html5在canvas中插入图片
阅读量:6633 次
发布时间:2019-06-25

本文共 1246 字,大约阅读时间需要 4 分钟。

 canvas loading...

在canvas中显示图片非常简单。可以通过修正层为图片添加印章、拉伸图片或者修改图片等,并且图片通常会成为canvas上的焦点。用HTML5 Canvas API内置的几个简单命令可以轻松地为canvas添加图片内容。

不过,图片增加了canvas操作的复杂度:必须等到图片完全加载后才能对其进行操作。浏览器通常会在页面脚本执行的同时异步加载图片。如果试图在图片未完全加载之前就将其呈现到canvas上,那么canvas将不会显示任何图片。因此,开发人员要特别注意,在呈现之前,应确保图片已经加载完毕。

为保证在呈现之前图片已完全加载,我们提供了回调,即仅当图像加载完成时才执行后续代码,如代码清单如下所示。

 

基本绘画

在最基本的画图操作中,你需要的只是希望图像出现处的位置(x和y坐标)。图像的位置是相对于其左上角来判断的。使用这种方法,图像可以简单的以其原尺寸被画在画布上。

drawImage
(image
, x
, y
)
var canvas
= document.
getElementById
(
‘myCanvas’
)
;
var ctx
= canvas.
getContext
(
’2d’
)
;ctx.
drawImage
(myImage
,
50
,
50
)
;
ctx.
drawImage
(myImage
,
125
,
125
)
;
ctx.
drawImage
(myImage
,
210
,
210
)
;
 

缩放及调整尺寸

改变图像的尺寸,你需要使用重载的drawImage函数,提供给它希望的宽度和高度参数。

drawImage
(image
, x
, y
, width
, height
)
var canvas
= document.
getElementById
(
‘myCanvas’
)
;
var ctx
= canvas.
getContext
(
’2d’
)
;ctx.
drawImage
(myImage
,
50
,
50
,
100
,
100
)
;
ctx.
drawImage
(myImage
,
125
,
125
,
200
,
50
)
;
ctx.
drawImage
(myImage
,
210
,
210
,
500
,
500
)
;

图像裁剪

最后一个drawImage方法的功用是对图像进行裁剪。

drawImage
(image
,
sourceX
,
sourceY
,
sourceWidth
,
sourceHeight
,
destX
,
destY
,
destWidth
,
destHeight
)

参数很多,但基本上你可以把它想成从原图中取出一个矩形区域,然后把它画到画布上目标区域里。

转载于:https://www.cnblogs.com/html5test/archive/2012/03/01/2375558.html

你可能感兴趣的文章
Keras缔造者:François Chollet专访
查看>>
CSS控制ul的基础代码
查看>>
添加ESXi主机并创建虚拟机
查看>>
PowerShell在Exchange2010下快速开启邮箱[续]
查看>>
XXX管理平台系统——架构
查看>>
jasypt命令行工具的使用说明
查看>>
Skype for Business Server 2015-11-Web Application Proxy-部署
查看>>
第十八章--Ext2和Ext3文件系统
查看>>
eclipse的m2e插件的bug
查看>>
App-V序列化服务器部署,应用程序虚拟化体验系列之四
查看>>
XenApp_XenDesktop_7.6实战篇之六:DHCP服务器规划及部署
查看>>
监控Web2.0,监控你用户的满意度
查看>>
增强的Java FTP工具----扩展免费版的edtftpj
查看>>
新浪明星日志推荐系统——爬虫爬取数据(2)
查看>>
extjs radio样例集合
查看>>
小议结构体中的大小
查看>>
数据库的唯一标示符(ID)的选择
查看>>
Cocos2d-x 精灵图片预加载中不会出现重复加载问题
查看>>
让UpdatePanel支持文件上传(1):开始
查看>>
活字格企业Web应用生成器V3.0发布更新,支持插件管理和多人协作开发
查看>>