From 7c2aac1d93c71ff7dc80aef431c54446931c33f1 Mon Sep 17 00:00:00 2001 From: lang Date: Thu, 23 Jun 2016 00:32:18 +0800 Subject: [PATCH] Background support gradient --- src/echarts.js | 25 +++++++++++++++++++++---- 1 file changed, 21 insertions(+), 4 deletions(-) diff --git a/src/echarts.js b/src/echarts.js index b44ab8cb6..f398a0650 100644 --- a/src/echarts.js +++ b/src/echarts.js @@ -401,6 +401,7 @@ define(function (require) { var ecModel = this._model; var api = this._api; var coordSysMgr = this._coordSysMgr; + var zr = this._zr; // update before setOption if (!ecModel) { return; @@ -430,10 +431,10 @@ define(function (require) { // Set background var backgroundColor = ecModel.get('backgroundColor') || 'transparent'; - var painter = this._zr.painter; + var painter = zr.painter; // TODO all use clearColor ? if (painter.isSingleCanvas && painter.isSingleCanvas()) { - this._zr.configLayer(0, { + zr.configLayer(0, { clearColor: backgroundColor }); } @@ -446,8 +447,24 @@ define(function (require) { backgroundColor = 'transparent'; } } - backgroundColor = backgroundColor; - this._dom.style.backgroundColor = backgroundColor; + if (backgroundColor.colorStops) { + // Gradient background + // FIXME Fixed layer? + zr.configLayer(0, { + clearColor: backgroundColor + }); + this._hasGradientBg = true; + } + else { + if (this._hasGradientBg) { + zr.configLayer(0, { + clearColor: null + }); + } + this._hasGradientBg = false; + + this._dom.style.background = backgroundColor; + } } // console.time && console.timeEnd('update'); -- GitLab