From 50c92153d5dec42d9945d2cef7a890d2c918ae1c Mon Sep 17 00:00:00 2001 From: MoyuScript Date: Tue, 13 Sep 2011 09:59:12 +0300 Subject: [PATCH] Fixed webkit-gradient regular expr --- build/html2canvas.js | 6 +----- src/Generate.js | 4 ++-- 2 files changed, 3 insertions(+), 7 deletions(-) diff --git a/build/html2canvas.js b/build/html2canvas.js index 33c94bc..cbffeef 100644 --- a/build/html2canvas.js +++ b/build/html2canvas.js @@ -192,9 +192,7 @@ html2canvas.Generate.Gradient = function(src, bounds) { } } } - if ( tmp = src.match(/-webkit-linear-gradient\((.*)\)/) ) { - position = tmp[1].split( ",", 1 )[0]; getColors( tmp[1].substr( position.length + 2 ) ); position = position.split(' '); @@ -221,8 +219,7 @@ html2canvas.Generate.Gradient = function(src, bounds) { } - } else if (tmp = src.match(/-webkit-gradient\(linear, (\d+)% (\d+)\%, (\d+)% (\d+)%, from\((.*)\), to\((.*)\)\)/)) { - + } else if (tmp = src.match(/-webkit-gradient\(linear, (\d+)[%]{0,1} (\d+)[%]{0,1}, (\d+)[%]{0,1} (\d+)[%]{0,1}, from\((.*)\), to\((.*)\)\)/)) { p0 = (tmp[1] * bounds.width) / 100; p1 = (tmp[2] * bounds.height) / 100; p2 = (tmp[3] * bounds.width) / 100; @@ -232,7 +229,6 @@ html2canvas.Generate.Gradient = function(src, bounds) { steps.push(tmp[6]); } else if (tmp = src.match(/-moz-linear-gradient\((\d+)% (\d+)%, (.*)\)/)) { - p0 = (tmp[1] * bounds.width) / 100; p1 = (tmp[2] * bounds.width) / 100; p2 = bounds.width - p0; diff --git a/src/Generate.js b/src/Generate.js index 4d76d97..3a02c78 100644 --- a/src/Generate.js +++ b/src/Generate.js @@ -67,7 +67,7 @@ html2canvas.Generate.Gradient = function(src, bounds) { } - } else if (tmp = src.match(/-webkit-gradient\(linear, (\d+)% (\d+)\%, (\d+)% (\d+)%, from\((.*)\), to\((.*)\)\)/)) { + } else if (tmp = src.match(/-webkit-gradient\(linear, (\d+)[%]{0,1} (\d+)[%]{0,1}, (\d+)[%]{0,1} (\d+)[%]{0,1}, from\((.*)\), to\((.*)\)\)/)) { p0 = (tmp[1] * bounds.width) / 100; p1 = (tmp[2] * bounds.height) / 100; @@ -77,7 +77,7 @@ html2canvas.Generate.Gradient = function(src, bounds) { steps.push(tmp[5]); steps.push(tmp[6]); - } else if (tmp = src.match(/-moz-linear-gradient\((\d+)% (\d+)%, (.*)\)/)) { + } else if (tmp = src.match(/-moz-linear-gradient\((\d+)[%]{0,1} (\d+)[%]{0,1}, (.*)\)/)) { p0 = (tmp[1] * bounds.width) / 100; p1 = (tmp[2] * bounds.width) / 100;