HTML5 canvas生成图片马赛克特效插件


简要教程
这是一款使用html5 canvas来将图片制作成马赛克效果的js插件。该插件的灵感来自于美国肖像画家Chuck Close。已经有人使用这个js插件来制作了一个完整的图片马赛克应用框架:The Pixelator。
使用方法
这个马赛克效果js插件需要使用同源的图片,根据 HTML5 规范,浏览器在解析getImageData()方法时会阻止获取跨浏览器的图片。
该canvas插件的html结构非常简单,就是使用一个<img>标签:
<img id="portrait-image" src="img/portrait.jpg" />然后可以使用下面的方法调用插件:
function init() {document.getElementById('portrait-image').closePixelate([{ resolution : 24 },{ shape : 'circle', resolution : 24, size: 16, offset: 12, alpha: 0.5 }]);
};
window.addEventListener( 'load', init, false);你可以使用一个可用参数数组中来控制输出的马赛克效果。参数数组中每一个集合都是一个对象,代表了某种马赛克输出效果。
在上面的例子中,第一组参数{ resolution : 24 }控制脚本每24像素就画一个大的正方形像素,然后为每一个正方形像素的中心填充一个精确的颜色值。
第二组参数使用了所有的可用参数:{ shape : 'circle', resolution : 24, size: 16, offset: 12, alpha: 0.5 }。和第一组参数一样,它的分辨率是24px,像素的形状是圆形,每一个圆形的大小是16像素,每一个圆形的右边都有12像素的偏移量,最后这个圆形的透明度被设置为50%。
可用参数
resolution :被渲染像素之间的距离。必须设定。
shape :像素的形状。可选值:square、circle 和 diamond,默认值:square。可选。
size :渲染像素的大小。可选。默认值为resolution。
offset :像素之间的偏移值。可选,默认值为0.可以只设置一个值,这时为对角偏移。也可以设置为一个数组或对象:[ 15, 5 ]或{ x: 15, y: 5 }。
alpha :渲染像素的透明度,可选,默认值为1。
构造函数和方法
var img = document.getElementById('portrait-img');
// create a new Close Pixelation instance with ClosePixelation
// requires two arguments: the original image element
// and an array of options
var myPixelation = new ClosePixelation( img, [{ resolution : 24 }
]);
// re-render the canvas with different options
myPixelation.render([{ resolution: 32 },{ resolution: 16, shape: 'circle', offset: 8 }
]);
// render a single option-set on top
myPixelation.renderClosePixels({resolution: 48, alpha: 0.5
});应用举例
html5 canvas图片马赛克效果-1
{ shape : 'diamond', resolution : 48, size: 50 },
{ shape : 'diamond', resolution : 48, offset : 24 },
{ shape : 'circle', resolution : 8, size: 6 }html5 canvas图片马赛克效果-2
{ resolution: 32 },
{ shape : 'circle', resolution : 32, offset: 15 },
{ shape : 'circle', resolution : 32, size: 26, offset: 13 },
{ shape : 'circle', resolution : 32, size: 18, offset: 10 },
{ shape : 'circle', resolution : 32, size: 12, offset: 8 }html5 canvas图片马赛克效果-3
{ resolution: 48 },
{ shape: 'diamond', resolution: 48, offset: 12, alpha: 0.5  },
{ shape: 'diamond', resolution: 48, offset: 36, alpha: 0.5  },
{ shape: 'circle', resolution: 16, size: 8, offset: 4, alpha: 0.5 }html5 canvas图片马赛克效果-4
{ shape: 'circle', resolution: 32, size: 6, offset: 8 },
{ shape: 'circle', resolution: 32, size: 9, offset: 16 },
{ shape: 'circle', resolution: 32, size: 12, offset: 24 },
{ shape: 'circle', resolution: 32, size: 9, offset: 0 }html5 canvas图片马赛克效果-5
{ shape: 'diamond', resolution: 24, size: 25 },
{ shape: 'diamond', resolution: 24, offset: 12 },
{ resolution: 24, alpha: 0.5 }html5 canvas图片马赛克效果-6
{ shape: 'square', resolution: 32 },
{ shape: 'circle', resolution: 32, offset: 16 },
{ shape: 'circle', resolution: 32, offset: 0, alpha: 0.5 },
{ shape: 'circle', resolution: 16, size: 9, offset: 0, alpha: 0.5 }html5 canvas图片马赛克效果-7
{ shape : 'circle', resolution : 24 },
{ shape : 'circle', resolution : 24, size: 9, offset: 12 }html5 canvas图片马赛克效果-8
{ shape : 'square', resolution : 48, offset: 24 },
{ shape : 'circle', resolution : 48, offset : 0 },
{ shape : 'diamond', resolution : 16, size: 15, offset : 0, alpha : 0.6 },
{ shape : 'diamond', resolution : 16, size: 15, offset : 8, alpha : 0.6 }html5 canvas图片马赛克效果-9
{ shape : 'square', resolution : 48 },
{ shape : 'diamond', resolution : 12, size: 8 },
{ shape : 'diamond', resolution : 12, size: 8, offset : 6 }本文地址:http://www.htmleaf.com/html5/html5-canvas/201502021314.html

转载于:https://www.cnblogs.com/xinlinux/p/4272199.html

HTML5 canvas生成图片马赛克特效插件相关推荐

  1. html5 即时生成图片,HTML5 canvas生成图片马赛克特效插件

    这是一款使用html5 canvas来将图片制作成马赛克效果的js插件.该插件的灵感来自于美国肖像画家Chuck Close.已经有人使用这个js插件来制作了一个完整的图片马赛克应用框架:The Pi ...

  2. html5 生成图片插件,HTML5 canvas生成图片马赛克特效插件

    简要教程 这是一款使用html5 canvas来将图片制作成马赛克效果的js插件.该插件的灵感来自于美国肖像画家Chuck Close.已经有人使用这个js插件来制作了一个完整的图片马赛克应用框架:T ...

  3. html酷炫电子时钟效果,逼真的HTML5 canvas模拟时钟特效

    插件描述:thooClock是一款效果非常逼真的HTML5 canvas模拟时钟特效.该时钟特效使用jQuery和HTML5 Canvas API来制作,模拟现实生活中的时钟.并且它还具有定时闹钟的功 ...

  4. ae制h5文字动画_7款超华丽的HTML5 Canvas文字动画特效

    本文作者html5tricks,转载请注明出处 文字是网页中最为常见的元素之一,当然我们使用最多的就是调整文字的颜色.大小等基本属性.有时候我们在一些活动页面上需要展示特别样式的文字效果,这时候我们就 ...

  5. html5字体动画效果,7款超华丽的HTML5 Canvas文字动画特效

    原标题:7款超华丽的HTML5 Canvas文字动画特效 文字是网页中最为常见的元素之一,当然我们使用最多的就是调整文字的颜色.大小等基本属性.有时候我们在一些活动页面上需要展示特别样式的文字效果,这 ...

  6. html5黑板源码,支持移动端的HTML5 Canvas逼真黑板特效

    简要教程 这是一款使用HTML5 Canvas制作的黑板特效,该黑板特效支持手机移动端,它能模拟使用粉笔在黑板上写字的效果.该黑板特效的特点还有:使用鼠标左键能够在黑板上写字. 使用鼠标右键能够擦除已 ...

  7. HTML5 Canvas图片马赛克模糊动画

    经常可以在网上或者电视上看到被马赛克模糊的图片或者视频,今天我们要利用HTML5 Canvas技术来实现图片的马赛克模糊效果.在演示中我们可以拖动滑竿来设置马赛克模糊的程度,你可以在不同的值下观察图片 ...

  8. html5 canvas 图片移动端,支持移动端的HTML5 Canvas逼真黑板特效

    插件描述:这是一款使用HTML5 Canvas制作的黑板特效,该黑板特效支持手机移动端,它能模拟使用粉笔在黑板上写字的效果. 这是一款使用HTML5 Canvas制作的黑板特效,该黑板特效支持手机移动 ...

  9. HTML5 canvas图片爆炸特效

    这是一款基于html5 canvas的炫酷图片爆炸飞散特效js插件.该js插件当用鼠标点击图片时,图片会有玻璃窗被子弹击碎时的爆炸飞散效果,非常炫酷. 在线演示:http://www.htmleaf. ...

最新文章

  1. 特斯拉员工自曝:为应付产能不惜偷工减料,出厂测试得过且过
  2. iOS之单例模式的写法
  3. Leetcode905.Sort Array By Parity按奇偶排序数组
  4. svn , github工作流
  5. 树莓派c语言实现modbus主机_特斯拉+树莓派实现车牌识别检测系统
  6. Android开发笔记(一百一十五)设计工具
  7. UI Framework-1: Ash Color Chooser
  8. linux 循环小时,shell脚本日期遍历(按天按小时)
  9. 剖析 ADO.NET 批处理更新
  10. 两堆草前饿死的驴——选择永远是件痛苦的事
  11. Hyperledger Fabric教程(11)-- 链码和背书策略
  12. switch在内存中的实现机制
  13. python中控脚本_ZKTime-Py
  14. python变量名包括_python中变量的命名以及使用
  15. Garbled Circuits介绍 - 56 Yao协议的实现 总结
  16. 【技术贴】Windows图片和传真查看器打开图片慢,正在生成预览的解决办法!
  17. 【Python数据挖掘课程】八.关联规则挖掘及Apriori实现购物推荐
  18. aws mysql 费用_AWS 免费一年套餐详解
  19. 电容三点式LC振荡器工作原理
  20. KMP算法及next数组(最大公共前后缀)求解

热门文章

  1. Win XP环境Tuxedo8.1安装、配置指南
  2. java list转json
  3. 设计模式之—工厂方法模式
  4. Facebook斥资5亿美元 建设全风电数据中心
  5. 《深入理解Android 5 源代码》——第1章,第1.2节剖析Android系统架构
  6. PHP在Linux上上传文件的注意事项
  7. Maven 环境快速搭建
  8. 自动化运维工具puppet(四)
  9. 这样就算会了PHP么?-7
  10. XAML实例教程系列 - 类型转换器(Type Converter)