• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com专业计算机教程网站
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure
您的位置:首页 > 网页设计 >html5 > HTML5 canvas平铺的代码详解

HTML5 canvas平铺的代码详解

作者:匿名 字体:[增加 减小] 来源:互联网 时间:2018-12-03

本文主要包含HTML5 ,canvas, 平铺等相关知识,匿名希望在学习及工作中可以帮助到您
最近在做个网站项目,用到很多canvas,有个需求是drawImage把图片画在canvas里面,图片比较小,需要平铺效果,当背景图。PS(背景图高宽10px,需要画的画布高宽200px)

由于一开始是drawImage出来的,所以采用了方法one

var canvas = document.getElementById("canvasId");
var ctx = canvas.getContext("2d");
var img = new Image();
//需要平铺的图片
img.src = "test1_bg.jpg";
img.onload = function (){
    var can = document.createElement("canvas");
    can.width = 10;
    can.height = 10;
    var ctx2 = can.getContext("2d");
    ctx2.drawImage(img,0,0,10,10,0,0,10,10);
    ctx.fillStyle = ctx.createPattern(can,"repeat");
    ctx.fillRect(0,0,200,200);
}

用到了背景图的高宽度10,有点繁琐,为什么不一步到位呢?所以改成了这种方式

var canvas = document.getElementById("canvasId");
var ctx = canvas.getContext("2d");
var img = new Image();
//需要平铺的图片
img.src = "test1_bg.jpg";
img.onload = function (){
    var pat = ctx.createPattern(img,"repeat");
    ctx.rect(0,0,200,200);
    ctx.fillStyle = pat;
    ctx.fill();
}

GOOD!
再来重申下createPattern定义

createPattern() 方法在指定的方向内重复指定的元素。
元素可以是图片、视频,或者其他 <canvas> 元素。
被重复的元素可用于绘制/填充矩形、圆形或线条等等。

JavaScript 语法:

context.createPattern(image,"repeat|repeat-x|repeat-y|no-repeat");

参数 描述



repeat默认。规定要使用的图片、画布或视频元素。
repeat-x该模式只在水平方向重复。
repeat-y该模式只在垂直方向重复。
no-repeat该模式只显示一次(不重复)。

以上就是HTML5 canvas平铺的代码详解的详细内容,更多请关注微课江湖其它相关文章!

您可能想查找下面的文章:

  • HTML5的本地存储
  • Define charset for HTML5 Doctype
  • HTML5 canvas如何绘制动态径向渐变
  • 如何使用HTML5 Canvas绘制动态线性渐变
  • HTML5 canvas如何实现马赛克的淡入淡出效果(代码)
  • HTML5 canvas中如何绘制图像
  • 如何使用HTML5 canvas实现图像的马赛克
  • html5 canvas实现简单的双缓冲
  • HTML5 Canvas 图形组合是如何实现的?附代码
  • HTML5 figure标签是什么意思?HTML5 figure标签的使用方法详解

相关文章

  • 2018-12-03在html5的Canvas上绘制椭圆的几种方法总结_html5教程技巧
  • 2018-12-03用html5实现画虚线效果代码
  • 2017-08-06利用HTML5绘制点线面组成的3D图形的示例
  • 2018-12-03如何用canvas绘制矩形?canvas画矩形的两种方法介绍
  • 2017-08-06HTML5中判断横屏竖屏的方法(移动端)
  • 2017-08-06HTML5 canvas标签实现刮刮卡效果
  • 2017-08-06html5 迷宫游戏(碰撞检测)实例一
  • 2018-12-03bookblock:可帮助你生成翻页效果的jQuery插件
  • 2018-12-03HTML5实现留言和回复的页面样式
  • 2018-12-03html5仿AMD9官网酷炫的下载引导页动画特效的示例代码

文章分类

  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure

最近更新的内容

    • canvas画矩形和svg画矩形的两种方法代码
    • HTML5编程实战之二-使用动画的形式切换图片代码案例
    • html5 canvas 使用示例 _html5教程技巧
    • 小强的HTML5移动开发之路(51)——jquerymobile中改善页面访问速度
    • JS中捕获console.log()输出的方法
    • html5 canvas标签是什么意思?canvas标签使用方法介绍
    • 乐车邦app 前端用的什么框架和技术?
    • HTML5第七天笔记
    • html5中如何实现用户注册表单的示例代码分享
    • 解决Firefox下不支持outerHTML问题代码分享_html5教程技巧

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有