mirror of
https://github.com/niklasvh/html2canvas.git
synced 2023-08-10 21:13:10 +03:00
"added -o-radial-gradient support"
This commit is contained in:
parent
78269913ca
commit
9f9b5bc8c2
@ -20,7 +20,8 @@ var reGradients = [
|
|||||||
/^(-webkit-gradient)\((linear|radial),\s((?:\d{1,3}%?)\s(?:\d{1,3}%?),\s(?:\d{1,3}%?)\s(?:\d{1,3}%?))([\w\d\.\s,%\(\)-]+)\)$/,
|
/^(-webkit-gradient)\((linear|radial),\s((?:\d{1,3}%?)\s(?:\d{1,3}%?),\s(?:\d{1,3}%?)\s(?:\d{1,3}%?))([\w\d\.\s,%\(\)-]+)\)$/,
|
||||||
/^(-moz-linear-gradient)\(((?:\d{1,3}%?)\s(?:\d{1,3}%?))([\w\d\.\s,%\(\)]+)\)$/,
|
/^(-moz-linear-gradient)\(((?:\d{1,3}%?)\s(?:\d{1,3}%?))([\w\d\.\s,%\(\)]+)\)$/,
|
||||||
/^(-webkit-radial-gradient)\(((?:\d{1,3}%?)\s(?:\d{1,3}%?)),\s(ellipse|circle)\s([a-z-]+)((?:,\s(?:rgb|rgba)\(\d{1,3},\s\d{1,3},\s\d{1,3}(?:,\s[0-9\.]+)?\)(?:\s\d{1,3}%)?)+)\)$/,
|
/^(-webkit-radial-gradient)\(((?:\d{1,3}%?)\s(?:\d{1,3}%?)),\s(ellipse|circle)\s([a-z-]+)((?:,\s(?:rgb|rgba)\(\d{1,3},\s\d{1,3},\s\d{1,3}(?:,\s[0-9\.]+)?\)(?:\s\d{1,3}%)?)+)\)$/,
|
||||||
/^(-moz-radial-gradient)\(((?:\d{1,3}%?)\s(?:\d{1,3}%?)),\s(ellipse|circle)\s?([a-z-]*)((?:,\s(?:rgb|rgba)\(\d{1,3},\s\d{1,3},\s\d{1,3}(?:,\s[0-9\.]+)?\)(?:\s\d{1,3}%)?)+)\)$/
|
/^(-moz-radial-gradient)\(((?:\d{1,3}%?)\s(?:\d{1,3}%?)),\s(ellipse|circle)\s?([a-z-]*)((?:,\s(?:rgb|rgba)\(\d{1,3},\s\d{1,3},\s\d{1,3}(?:,\s[0-9\.]+)?\)(?:\s\d{1,3}%)?)+)\)$/,
|
||||||
|
/^(-o-radial-gradient)\(((?:\d{1,3}%?)\s(?:\d{1,3}%?)),\s(ellipse|circle)\s([a-z-]+)((?:,\s(?:rgb|rgba)\(\d{1,3},\s\d{1,3},\s\d{1,3}(?:,\s[0-9\.]+)?\)(?:\s\d{1,3}(?:%|px))?)+)\)$/
|
||||||
];
|
];
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@ -204,6 +205,7 @@ _html2canvas.Generate.parseGradient = function(css, bounds) {
|
|||||||
|
|
||||||
case '-webkit-radial-gradient':
|
case '-webkit-radial-gradient':
|
||||||
case '-moz-radial-gradient':
|
case '-moz-radial-gradient':
|
||||||
|
case '-o-radial-gradient':
|
||||||
console.log(m1);
|
console.log(m1);
|
||||||
|
|
||||||
gradient = {
|
gradient = {
|
||||||
@ -298,16 +300,18 @@ _html2canvas.Generate.parseGradient = function(css, bounds) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// color stops
|
// color stops
|
||||||
m2 = m1[5].match(/((?:rgb|rgba)\(\d{1,3},\s\d{1,3},\s\d{1,3}(?:,\s[0-9\.]+)?\)(?:\s\d{1,3}%)?)+/g);
|
m2 = m1[5].match(/((?:rgb|rgba)\(\d{1,3},\s\d{1,3},\s\d{1,3}(?:,\s[0-9\.]+)?\)(?:\s\d{1,3}(?:%|px))?)+/g);
|
||||||
if(m2){
|
if(m2){
|
||||||
m2Len = m2.length;
|
m2Len = m2.length;
|
||||||
step = 1 / Math.max(m2Len - 1, 1);
|
step = 1 / Math.max(m2Len - 1, 1);
|
||||||
for(i = 0; i < m2Len; i+=1){
|
for(i = 0; i < m2Len; i+=1){
|
||||||
m3 = m2[i].match(/((?:rgb|rgba)\(\d{1,3},\s\d{1,3},\s\d{1,3}(?:,\s[0-9\.]+)?\))\s*(\d{1,3})?(%)?/);
|
m3 = m2[i].match(/((?:rgb|rgba)\(\d{1,3},\s\d{1,3},\s\d{1,3}(?:,\s[0-9\.]+)?\))\s*(\d{1,3})?(%|px)?/);
|
||||||
if(m3[2]){
|
if(m3[2]){
|
||||||
stop = parseFloat(m3[2]);
|
stop = parseFloat(m3[2]);
|
||||||
if(m3[3]){ // percent
|
if(m3[3] === '%'){
|
||||||
stop /= 100;
|
stop /= 100;
|
||||||
|
} else { // px - stupid opera
|
||||||
|
stop /= bounds.width;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
stop = i * step;
|
stop = i * step;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user