【发布时间】:2015-03-27 10:28:30
【问题描述】:
如果要使用具有透明度的颜色,最好使用什么来获得更好的性能
strokeStyle 使用 rgba 还是 globalAlpha?
第一:
var rChannel = 0;
var gChannel = 0;
var bChannel = 0;
var aChannel = 0.5;
context.strokeStyle("rgba(" + rChannel + "," + gChannel + "," + bChannel + "," + aChannel + ")");
第二:
context.globalAlpha = "0.5";
【问题讨论】:
-
好问题!我猜两者都被浏览器内部转换为相同的上下文状态,因为两者具有相同的效果。如何为我们进行性能测试以报告您的发现。 :-)
-
@markE 是对的,只有测试(例如使用 jsperf)才能得到肯定的答复。如果您搜索有关该主题的现有 jsperf,请注意:作为 90% 的 jsperf,它们会衡量除声称的内容之外的所有内容。 jsperf.com/rgba-vs-globalapha 可能是一个初学者:更新它以测试 您的 用例。如您所见,除非您选择定位或忽略某些浏览器,否则很难清楚地了解性能。
-
没关系。混合和合成过程完全相同。
标签: html5-canvas alpha rgba