@@ -40,21 +40,37 @@ exports.toSVG = function(gd) {
40
40
41
41
function canvasToImage ( canvas ) {
42
42
var rect = canvas . getBoundingClientRect ( ) ;
43
- var compStyle = window . getComputedStyle ( canvas , null ) ;
44
- var canvasContentOriginX = parseFloat ( compStyle . getPropertyValue ( 'padding-left' ) ) + rect . left ;
45
- var canvasContentOriginY = parseFloat ( compStyle . getPropertyValue ( 'padding-top' ) ) + rect . top ;
43
+ var bodyStyle = window . getComputedStyle ( document . body , null ) ;
44
+ var canvasStyle = window . getComputedStyle ( canvas , null ) ;
45
+ var canvasContentOriginX = parseFloat ( canvasStyle . getPropertyValue ( 'padding-left' ) ) + rect . left ;
46
+ var canvasContentOriginY = parseFloat ( canvasStyle . getPropertyValue ( 'padding-top' ) ) + rect . top ;
46
47
47
48
var imageData = canvas . toDataURL ( 'image/png' ) ;
48
49
var image = gd . _fullLayout . _glimages . append ( 'svg:image' ) ;
50
+
49
51
image . attr ( {
50
52
xmlns : xmlnsNamespaces . svg ,
51
53
'xlink:href' : imageData ,
52
- x : canvasContentOriginX ,
53
- y : canvasContentOriginY
54
+ x : canvasContentOriginX - parseFloat ( bodyStyle . getPropertyValue ( 'margin-left' ) ) ,
55
+ y : canvasContentOriginY - parseFloat ( bodyStyle . getPropertyValue ( 'margin-top' ) ) ,
56
+ width : parseFloat ( canvasStyle . getPropertyValue ( 'width' ) ) ,
57
+ height : parseFloat ( canvasStyle . getPropertyValue ( 'height' ) )
54
58
} ) ;
55
59
}
56
60
57
- var canvases = document . querySelectorAll ( '.parcoords-lines.context, .parcoords-lines.focus' ) ;
61
+ var canvases = Array . prototype . slice . call ( document . querySelectorAll ( '.parcoords-lines.context, .parcoords-lines.focus' ) ) ;
62
+
63
+ /*
64
+ var svgs = Array.prototype.slice.call(document.querySelectorAll('.main-svg'));
65
+ document.querySelectorAll('.axisTitle')[0].setAttribute('text-anchor', 'begin');
66
+ document.querySelectorAll('.axisTitle')[0].style['font-size'] = '16px';
67
+ document.querySelectorAll('.axisTitle')[0].innerHTML = svgs.length;
68
+ svgs.forEach(function(s) {
69
+ //s.style.opacity = 0.1;
70
+ //s.style.display = 'none'
71
+ //s.parentElement.removeChild(s)
72
+ })
73
+ */
58
74
59
75
canvases . forEach ( canvasToImage ) ;
60
76
} ;
0 commit comments