mirror of
https://github.com/niklasvh/html2canvas.git
synced 2023-08-10 21:13:10 +03:00
Fix webkit-gradient() parsing
This commit is contained in:
parent
861a18f977
commit
2bb926c7d0
@ -324,7 +324,7 @@
|
||||
if(bounds.width === 0 || bounds.height === 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
var canvas = document.createElement('canvas'),
|
||||
ctx = canvas.getContext('2d'),
|
||||
gradient, grad, i, len;
|
||||
@ -378,7 +378,7 @@
|
||||
canvasRadial.width = canvasRadial.height = di;
|
||||
|
||||
grad = ctxRadial.createRadialGradient(gradient.rx, gradient.ry, 0, gradient.rx, gradient.ry, ri);
|
||||
|
||||
|
||||
for (i = 0, len = gradient.colorStops.length; i < len; i+=1) {
|
||||
try {
|
||||
grad.addColorStop(gradient.colorStops[i].stop, gradient.colorStops[i].color);
|
||||
|
@ -818,9 +818,10 @@ _html2canvas.Parse = function (images, options) {
|
||||
function renderBackgroundImage(element, bounds, ctx) {
|
||||
var backgroundImage = getCSS(element, "backgroundImage"),
|
||||
backgroundImages = _html2canvas.Util.parseBackgroundImage(backgroundImage),
|
||||
image;
|
||||
image,
|
||||
imageIndex = backgroundImages.length;
|
||||
|
||||
for(var imageIndex = backgroundImages.length; imageIndex-- > 0;) {
|
||||
while(imageIndex--) {
|
||||
backgroundImage = backgroundImages[imageIndex];
|
||||
|
||||
if (!backgroundImage.args || backgroundImage.args.length === 0) {
|
||||
@ -829,7 +830,7 @@ _html2canvas.Parse = function (images, options) {
|
||||
|
||||
var key = backgroundImage.method === 'url' ?
|
||||
backgroundImage.args[0] :
|
||||
backgroundImage.value + '/' + element.__html2canvas__id + '/' + imageIndex;
|
||||
backgroundImage.value;
|
||||
|
||||
image = loadImage(key);
|
||||
|
||||
@ -837,7 +838,7 @@ _html2canvas.Parse = function (images, options) {
|
||||
if (image) {
|
||||
renderBackgroundRepeating(element, bounds, ctx, image, imageIndex);
|
||||
} else {
|
||||
h2clog("html2canvas: Error loading background:" + backgroundImage);
|
||||
h2clog("html2canvas: Error loading background:", backgroundImage);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -139,16 +139,15 @@ _html2canvas.Preload = function( options ) {
|
||||
src = background_image.args[0];
|
||||
methods.loadImage(src);
|
||||
|
||||
} else if( background_image.method.match( /\-gradient$/ ) ) {
|
||||
} else if( background_image.method.match( /\-?gradient$/ ) ) {
|
||||
if(bounds === undefined) {
|
||||
bounds = _html2canvas.Util.Bounds( el );
|
||||
}
|
||||
|
||||
var key = background_image.value + '/' + el.__html2canvas__id + '/' + imageIndex;
|
||||
img = _html2canvas.Generate.Gradient( background_image.value, bounds);
|
||||
|
||||
if ( img !== undefined ){
|
||||
images[ key ] = {
|
||||
images[background_image.value] = {
|
||||
img: img,
|
||||
succeeded: true
|
||||
};
|
||||
|
Loading…
Reference in New Issue
Block a user