adjusted renderElement

This commit is contained in:
zsviczian 2023-11-16 22:15:53 +00:00
parent 156b8b422b
commit 49f2c88978

View File

@ -985,6 +985,8 @@ export const renderElementToSvg = (
renderConfig, renderConfig,
); );
const scaleX = element.scale?.[0] || 1;
const scaleY = element.scale?.[1] || 1;
// render embeddable element + iframe // render embeddable element + iframe
const embeddableNode = roughSVGDrawWithPrecision( const embeddableNode = roughSVGDrawWithPrecision(
rsvg, rsvg,
@ -996,7 +998,7 @@ export const renderElementToSvg = (
"transform", "transform",
`translate(${offsetX || 0} ${ `translate(${offsetX || 0} ${
offsetY || 0 offsetY || 0
}) rotate(${degree} ${cx} ${cy})`, }) rotate(${degree} ${cx} ${cy}) scale(${scaleX}, ${scaleY})`,
); );
while (embeddableNode.firstChild) { while (embeddableNode.firstChild) {
embeddableNode.removeChild(embeddableNode.firstChild); embeddableNode.removeChild(embeddableNode.firstChild);
@ -1027,8 +1029,8 @@ export const renderElementToSvg = (
SVG_NS, SVG_NS,
"foreignObject", "foreignObject",
); );
foreignObject.style.width = `${element.width}px`; foreignObject.style.width = `${element.width / scaleX}px`;
foreignObject.style.height = `${element.height}px`; foreignObject.style.height = `${element.height / scaleY}px`;
foreignObject.style.border = "none"; foreignObject.style.border = "none";
const div = foreignObject.ownerDocument!.createElementNS(SVG_NS, "div"); const div = foreignObject.ownerDocument!.createElementNS(SVG_NS, "div");
div.setAttribute("xmlns", "http://www.w3.org/1999/xhtml"); div.setAttribute("xmlns", "http://www.w3.org/1999/xhtml");