mirror of
https://github.com/niklasvh/html2canvas.git
synced 2023-08-10 21:13:10 +03:00
remove svg rendering
This commit is contained in:
parent
2c58c56fbe
commit
a902f92a14
70
src/Parse.js
70
src/Parse.js
@ -1062,79 +1062,9 @@ _html2canvas.Parse = function (images, options) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function svgDOMRender(body, stack) {
|
|
||||||
var img = new Image(),
|
|
||||||
docWidth = documentWidth(),
|
|
||||||
docHeight = documentHeight(),
|
|
||||||
html = "";
|
|
||||||
|
|
||||||
function parseDOM(el) {
|
|
||||||
var children = _html2canvas.Util.Children( el ),
|
|
||||||
len = children.length,
|
|
||||||
attr,
|
|
||||||
a,
|
|
||||||
alen,
|
|
||||||
elm,
|
|
||||||
i;
|
|
||||||
for ( i = 0; i < len; i+=1 ) {
|
|
||||||
elm = children[ i ];
|
|
||||||
if ( elm.nodeType === 3 ) {
|
|
||||||
// Text node
|
|
||||||
html += elm.nodeValue.replace(/</g,"<").replace(/>/g,">");
|
|
||||||
} else if ( elm.nodeType === 1 ) {
|
|
||||||
// Element
|
|
||||||
if ( !/^(script|meta|title)$/.test(elm.nodeName.toLowerCase()) ) {
|
|
||||||
|
|
||||||
html += "<" + elm.nodeName.toLowerCase();
|
|
||||||
|
|
||||||
// add attributes
|
|
||||||
if ( elm.hasAttributes() ) {
|
|
||||||
attr = elm.attributes;
|
|
||||||
alen = attr.length;
|
|
||||||
for ( a = 0; a < alen; a+=1 ) {
|
|
||||||
html += " " + attr[ a ].name + '="' + attr[ a ].value + '"';
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
html += '>';
|
|
||||||
|
|
||||||
parseDOM( elm );
|
|
||||||
|
|
||||||
|
|
||||||
html += "</" + elm.nodeName.toLowerCase() + ">";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
parseDOM(body);
|
|
||||||
img.src = [
|
|
||||||
"data:image/svg+xml,",
|
|
||||||
"<svg xmlns='http://www.w3.org/2000/svg' version='1.1' width='" + docWidth + "' height='" + docHeight + "'>",
|
|
||||||
"<foreignObject width='" + docWidth + "' height='" + docHeight + "'>",
|
|
||||||
"<html xmlns='http://www.w3.org/1999/xhtml' style='margin:0;'>",
|
|
||||||
html.replace(/\#/g,"%23"),
|
|
||||||
"</html>",
|
|
||||||
"</foreignObject>",
|
|
||||||
"</svg>"
|
|
||||||
].join("");
|
|
||||||
|
|
||||||
img.onload = function() {
|
|
||||||
stack.svgRender = img;
|
|
||||||
};
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
function init() {
|
function init() {
|
||||||
var stack = renderElement(element, null);
|
var stack = renderElement(element, null);
|
||||||
|
|
||||||
if (support.svgRendering) {
|
|
||||||
svgDOMRender(document.documentElement, stack);
|
|
||||||
}
|
|
||||||
|
|
||||||
Array.prototype.slice.call(element.children, 0).forEach(function(childElement) {
|
Array.prototype.slice.call(element.children, 0).forEach(function(childElement) {
|
||||||
parseElement(childElement, stack);
|
parseElement(childElement, stack);
|
||||||
});
|
});
|
||||||
|
@ -85,10 +85,6 @@ _html2canvas.Renderer.Canvas = function(options) {
|
|||||||
ctx.fillStyle = fstyle;
|
ctx.fillStyle = fstyle;
|
||||||
|
|
||||||
|
|
||||||
if ( options.svgRendering && zStack.svgRender !== undefined ) {
|
|
||||||
// TODO: enable async rendering to support this
|
|
||||||
ctx.drawImage( zStack.svgRender, 0, 0 );
|
|
||||||
} else {
|
|
||||||
for ( i = 0, queueLen = queue.length; i < queueLen; i+=1 ) {
|
for ( i = 0, queueLen = queue.length; i < queueLen; i+=1 ) {
|
||||||
storageContext = queue.splice(0, 1)[0];
|
storageContext = queue.splice(0, 1)[0];
|
||||||
storageContext.canvasPosition = storageContext.canvasPosition || {};
|
storageContext.canvasPosition = storageContext.canvasPosition || {};
|
||||||
@ -112,7 +108,6 @@ _html2canvas.Renderer.Canvas = function(options) {
|
|||||||
ctx.restore();
|
ctx.restore();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
h2clog("html2canvas: Renderer: Canvas renderer done - returning canvas obj");
|
h2clog("html2canvas: Renderer: Canvas renderer done - returning canvas obj");
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user