diff --git a/lib/phantomscript.js b/lib/phantomscript.js index 11a0b42d5..20a750ce4 100644 --- a/lib/phantomscript.js +++ b/lib/phantomscript.js @@ -210,6 +210,9 @@ function executeInPage(data) { , elContent , svg , svgValue + , boundingBox + , width + , height toRemove = document.getElementsByClassName('mermaid') if (toRemove && toRemove.length) { @@ -254,6 +257,32 @@ function executeInPage(data) { mermaid.init(); svg = document.querySelector('svg') + + boundingBox = svg.getBoundingClientRect(); // the initial bonding box of the svg + width = boundingBox.width * 1.5; // adding the scale factor for consistency with output in chrome browser + height = boundingBox.height * 1.5; // adding the scale factor for consistency with output in chrome browser + + // resizing the body to fit the svg + document.body.setAttribute( + 'style' + , 'width: ' + width + '; height: ' + height + ';' + ) + // resizing the svg via css for consistent display + svg.setAttribute( + 'style' + , 'width: ' + width + '; height: ' + height + ';' + ) + + // set witdth and height attributes used to set the viewport when rending png image + svg.setAttribute( + 'width' + , width + ) + svg.setAttribute( + 'height' + , height + ) + svgValue = xmlSerializer.serializeToString(svg) //console.log(document.body.outerHTML);