首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用globalCompositeOperation测试画布混合模式

如何使用globalCompositeOperation测试画布混合模式
EN

Stack Overflow用户
提问于 2013-07-10 00:21:08
回答 1查看 723关注 0票数 1

因此,根据this article的说法,您可以使用以下命令对画布混合模式进行功能测试:

代码语言:javascript
复制
Modernizr.addTest('canvasblending', function () {
   if (Modernizr.canvas === false) return false;
   var ctx = document.createElement('canvas').getContext('2d');
   ctx.globalCompositeOperation = 'screen';
   return ctx.globalCompositeOperation == 'screen';
});

它在Chrome 27中返回一个假阳性。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-07-10 00:21:08

我写了一些确实有用的东西,但它非常难看,但我认为它可以帮助其他人,或者我们可以得到更好的东西。这是我想出来的:

代码语言:javascript
复制
Modernizr.addTest('canvasblending', function() {
  if ( ! Modernizr.canvas ) return false;
  var canvas = document.createElement('canvas');
  canvas.width = 1;
  canvas.height = 1;
  var ctx = canvas.getContext('2d');
  ctx.fillStyle = '#000';
  ctx.fillRect(0,0,1,1);
  ctx.globalCompositeOperation = 'multiply';
  ctx.fillStyle = '#fff';
  ctx.fillRect(0,0,1,1);
  return ctx.getImageData(0,0,1,1).data[0] === 0;
});
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17553357

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档