前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >超级玛丽HTML5源代码学习------(一)

超级玛丽HTML5源代码学习------(一)

作者头像
wust小吴
发布于 2022-03-03 12:40:01
发布于 2022-03-03 12:40:01
1.4K03
代码可运行
举报
文章被收录于专栏:风吹杨柳风吹杨柳
运行总次数:3
代码可运行
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<pre name="code" class="html"><!doctype html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<meta http-equiv="Pragma" content="no-cache" />
<meta http-equiv="Expires" content="-1" />
<meta http-equiv="Cache-Control" content="no-cache" />


<title>My first Game</title>

<style type="text/css">
body {
	/** 边框:无 0像素 */
	border:none 0px;
	/** 边外补白:向外填充0像素 */
	margin:0px;
	/** 向内填充:向内填充0像素 距上级边框0像素 */
	padding:10px;
	/** 设置字体大小 16px = 1em */
	font-size : 16px;
	background-color : #f3f3f3;
}
/** 画布 canvas */
canvas {
	/** 边框:1像素 实线 蓝色 */
	border : 1px solid blue; 
}
</style>


<script type="text/javascript">


function init(){
	
	// 创建canvas,并初始化 (我们也可以直接以标签形式写在页面中,然后通过id等方式取得canvas)
	var canvas=document.createElement("canvas");
	//设置canvas对象的高度和宽度
	canvas.width=600;
	canvas.height=400;
	//将canvas加入到body的末尾
	document.body.appendChild(canvas);
		
	// 取得2d绘图上下文 
	// context是一个封装了很多绘图功能的对象
	// 获取这个对象的方法是var context =canvas.getContext("2d");
	// html5 目前好像只提供2D服务,它还是处女
	var context= canvas.getContext("2d");
	
	// 加载图片,加载后在context上进行绘制. (图片是异步加载,所以在onload事件里进行绘制)
	var image = new Image();
	//获取图像地址
	image.src = "../res/bg.png";
	//image的onload事件
	image.οnlοad=function(event){
		var loadedImg=event.target;
		// 将加载后的图片,绘制在画布坐标[dx,dy]处,也就是图片的左上角坐标为[dx,dy]
		//就是从左上角(0,0)开始绘制,高度为400.宽度为600
		var dx=0, dy=0 ;
		//加载图片后再context上进行绘制。
		//绘制图像,drawImage有三种方法,
		context.drawImage(loadedImg,dx,dy);
	};

}


</script>

</head> 
<body οnlοad="init()"> 


<div align="center"><a href="http://www.linuxidc.com" target="_blank">www.Linuxidc.com</a></div>
</body>
</html>
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
对于canvas画布的深度学习:
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
</pre><pre name="code" class="html">绘图 context.drawImage

    context.drawImage(image,x,y)

        image:Image对象var img=new Image(); img.src="url(...)";

        x:绘制图像的x坐标

        y:绘制图像的y坐标

    context.drawImage(image,x,y,w,h)

        image:Image对象var img=new Image(); img.src="url(...)";

        x:绘制图像的x坐标

        y:绘制图像的y坐标

        w:绘制图像的宽度

        h:绘制图像的高度

    context.drawImage(image,sx,sy,sw,sh,dx,dy,dw,dh):选取图像的一部分矩形区域进行绘制

        image:Image对象var img=new Image(); img.src="url(...)";

        sx:图像上的x坐标

        sy:图像上的y坐标

        sw:矩形区域的宽度

        sh:矩形区域的高度

        dx:画在canvas的x坐标

        dy:画在canvas的y坐标

        dw:画出来的宽度

        dh:画出来的高度
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<script type="text/javascript">

        //drawImage(image,x,y)
        function draw28(id) {

            var image = new Image();

            image.src = "Image/html5.jpg";
            var canvas = document.getElementById(id);

            if (canvas == null)
                return false;
            var context = canvas.getContext("2d");
            context.fillStyle = "#EEEEFF";

            context.fillRect(0, 0, 400, 300);
            image.onload = function () {
                context.drawImage(image,0,0);
            }
        }

        //drawImage(image,x,y,w,h)
        function draw12(id) {
          
            var image = new Image();

            image.src = "Image/html5.jpg";
            var canvas = document.getElementById(id);

            if (canvas == null)
                return false;
            var context = canvas.getContext("2d");
            context.fillStyle = "#EEEEFF";
           
            context.fillRect(0, 0, 400, 300);
            image.onload = function () {
                context.drawImage(image, 50, 50, 300, 200);
            }
        }

        //drawImage(image,sx,sy,sw,sh,dx,dy,dw,dh)
        function draw13(id){
            var image = new Image();
            image.src = "Image/html5.jpg";
            var canvas = document.getElementById(id);
           
            if (canvas == null)
                return false;
            var context = canvas.getContext("2d");
            context.fillStyle = "#EEEEFF";
          
            context.fillRect(0, 0, 400, 300);
            image.onload = function () {
                context.drawImage(image, 100, 100, 200, 150,50,50,300,200);//这里取的是实际尺寸
            }
        }
</script>

关于canvas学习的详细地址:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
http://www.cnblogs.com/tim-li/archive/2012/08/06/2580252.html
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
</pre><pre name="code" class="html">
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
超级玛丽HTML5源代码学习------(二)
首先放置源代码: <!doctype html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <meta http-equiv="Pragma" content="no-cache" /> <meta http-equiv="Expires" content="-1" /> <meta http-equiv="Cache-Control" content="no-cache" />
wust小吴
2022/03/03
1.7K0
超级玛丽HTML5源代码学习------(二)
Canvas系列(6):绘制图片
我们现在已经可以绘制好多东西了,不过在实际开发中,绘制最多的当然是图片了,这章我们就讲讲图片的绘制。
kai666666
2020/10/17
9600
超级玛丽HTML5源代码学习-----(三)
定义和用法 setInterval() 方法可按照指定的周期(以毫秒计)来调用函数或计算表达式。 setInterval() 方法会不停地调用函数,直到 clearInterval() 被调用或窗口被关闭。由 setInterval() 返回的 ID 值可用作 clearInterval() 方法的参数。 语法 setInterval(code,millisec[,"lang"]) 参数 描述 code 必需。要调用的函数或要执行的代码串。 millisec 必须。周期性执行或调用 code 之间的时间间隔,以毫秒计。 返回值 一个可以传递给 Window.clearInterval() 从而取消对 code 的周期性执行的值。
wust小吴
2022/03/03
1.3K0
熬夜总结了 “HTML5画布” 的知识点(共10条)
(xStart,yStart)是线段的起点,(xEnd,yEnd)是线段终点。起点到终点之间的颜色呈渐变。
小灰
2020/08/02
7.3K0
HTML5中Canvas元素的使用总结 原
    Canvas提供了开发者自定义绘图的接口,我们可以公国getContext()函数来获取绘图上下文进行绘制操作,这个函数中可以传入两个参数,其中第1个参数设置绘图上下文的类型,比较常用的是"2d",我们也可以使用"webgl"来使用webOpenGL实现3D绘制。本篇博客主要总结2d绘制的相关方法。
珲少
2018/08/15
2K0
HTML5中Canvas元素的使用总结
                                                                            原
学习总结之HTML5剑指前端
学习《HTML5与CSS3权威指南》这本书很不错,学完之后我颇有感触,觉得web的世界开明了许多。这本书是需要有一定基础的web前端开发工程师。
达达前端
2020/03/20
2.1K0
学习总结之HTML5剑指前端
HTML5常用的标签
目录: HTML5新结构标签 HTML5新其他标签 HTML5新input类型 HTML5新属性 HTML5高级应用 html4和html5对比: Html4代表示例: <div id=“header”></div> <div id=“nav”></div> <div class=“section”> <div class=“article”></div> </div> <div id=“sideBar”></div> <div id=“footer”></div> Html5代码示例: <header>
用户1730674
2018/05/02
2.1K0
超级玛丽HTML5源代码学习------(四)
这些行为组成。游戏主循环就是用来处理这个行为序列,在javascript中可以用setInterval方法来轮询。在超级玛丽中是这个循环
wust小吴
2022/03/03
1.5K0
06. Web大前端时代之:HTML5+CSS3入门系列~HTML5 画布(下)
矩 阵 变 化 其实像 translate(移动),scale(缩放),rotate(旋转)都是特殊的矩阵变换 transform(m11,m12,m21,m22,dx,dy) 替换当前的变换矩阵(transform() 允许您缩放、旋转、移动并倾斜当前的环境) http://www.w3school.com.cn/tags/canvas_transform.asp 参数图解 本质公式 参数详解 水平缩放绘图 m11 水平倾斜绘图 m12 垂直倾斜绘图 m21 垂直缩放绘图 m22 水平移动绘图 dx 垂直
逸鹏
2018/04/09
1.4K0
canvas 处理图像(上)
本文将介绍在 Canvas 中使用图像的知识,包括加载图像和处理图像中的单个像素。Canvas 的这个功能可以用来创建一些炫丽的效果。本文还将教会你一般图像处理的知识。
用户8921923
2022/10/24
2.3K0
Html5 学习系列(五)Canvas绘图API快速入门(2)
本文介绍了Canvas的基本用法,包括绘制文本、矩形、圆形、图像、动画、混合模式、缓存、绘制像素、阴影、裁剪、抗锯齿、半透明、Canvas3D以及一个自定义绘图的示例。通过这些基础用法,可以快速上手HTML5 Canvas,实现各种复杂的效果。
老马
2018/01/05
1.1K0
Canvas简单入门
创建canvas至少需要提供width和height属性,才能通知浏览器需要多大位置画图。标签的内容是后备数据,在浏览器不支持canvas元素时显示。
赤蓝紫
2023/03/16
1.6K0
Canvas简单入门
【HTML5】图片预加载
在HTML5中,我们可以使用drawImage方法在canvas上进行画图操作,其基本代码如下:
零式的天空
2022/03/02
2.9K0
[HTML5] Canvas绘制简单图片
定义Image对象的onload方法,调用context对象的drawImage()方法,参数:Image对象,x坐标,y坐标
唯一Chat
2019/09/10
1.3K0
[HTML5] Canvas绘制简单图片
HTML5 Canvas API详解
HTML5 是一个新兴标准,它正在以越来越快的速度替代久经考验的 HTML4。HTML5 是一个 W3C “工作草案” — 意味着它仍然处于开发阶段 — 它包含丰富的元素和属性,它们都支持现行的 HTML 4.01 版本规范。它还引入了几个新元素和属性,它们适用许多使用 web 页面的领域 — 音频、视频、图形、数据存储、内容呈现,等等。本文主要关注图形方面的增强:canvas。 新的 HTML5 canvas 是一个原生 HTML 绘图簿,用于 JavaScript 代码,不使用第三方工具。跨所有 web 浏览器的完整 HTML5 支持还没有完成,但在新兴的支持中,canvas 已经可以在几乎所有现代浏览器上良好运行了,但 Windows® Internet Explorer® 除外。幸运的是,一个解决方案已经出现,将 Internet Explorer 也包含进来。 本质上,canvas 元素是一个白板,直到您在它上面 “绘制” 一些可视内容。与拥有各种画笔的艺术家不同,您使用不同的方法在 canvas 上作画。您甚至可以在 canvas 上创建并操作动画,这不是使用画笔和油彩所能够实现的。
业余草
2019/01/21
2.1K0
canvas离屏技术与放大镜实现
利用canvas除了可以实现滤镜,还可以利用离屏技术实现放大镜功能。为了方便讲解,本文分为 2 个应用部分:
心谭博客
2020/04/20
1.3K0
canvas 像素操作
在 canvas 中可以使用 context.drawImage(image,dx,dy) 方法将图片绘制在 canvas 上。将图片绘制上去后,还可以使用 context.getImageData(sx, sy, sw, sh) 方法获取 canvas 区域隐含的像素数据,该方法返回一个 ImageData 对象,里面包含的是 canvas 像素信息。
多云转晴
2020/01/14
1.9K0
canvas 像素操作
JS 图片压缩
说起图片压缩,大家想到的或者平时用到的很多工具都可以实现,例如,客户端类的有图片压缩工具 PPDuck3, JS 实现类的有插件 compression.js ,亦或是在线处理类的 OSS 上传,文件上传后,在访问文件时中也有图片的压缩配置选项,不过,能不能自己撸一套 JS 实现的图片压缩代码呢?当然可以,那我们先来理一下思路。
政采云前端团队
2020/04/27
27.2K0
HTML5 学习总结(四)——canvas绘图、WebGL、SVG
一、Canvas canvas是HTML5中新增一个HTML5标签与操作canvas的javascript API,它可以实现在网页中完成动态的2D与3D图像技术。<canvas> 标记和 SVG以及
张果
2018/01/04
9.8K0
HTML5 学习总结(四)——canvas绘图、WebGL、SVG
Canvas之使用图片 原
canvas有比较强的图片操作能力。可以用于动态的图像合成或者作为图形的背景。浏览器支持任意格式如PNG、GIF、或者JPEG,你甚至可以将同一个页面中的其他canvas元素生成的图片作为图片源(toDataURL("image/png"),canvas.toDataURL('image/jpeg', quality))
tianyawhl
2019/04/04
1.1K0
Canvas之使用图片
                                                                            原
相关推荐
超级玛丽HTML5源代码学习------(二)
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验