diff --git a/src/dom-to-image.js b/src/dom-to-image.js index 27201ac9..83fa6eca 100644 --- a/src/dom-to-image.js +++ b/src/dom-to-image.js @@ -341,6 +341,8 @@ foreignObject + ''; }) .then(function (svg) { + // add U+200D ZERO WIDTH JOINER for Arabic-script letter connections that would be broken by a HTML tag: + svg = svg.replace(/(?<=[بتثپجحخچسشصضطظعغفقكکگلمنهيیی][ًٌٍَُِّّْ]*)((?:<\/?(?:span|b\b|del|em|ins|mark|s\b|strong|u\b)[^>]*>)+)(?=[ء-يٮ-ٳژکگی])/g, "%E2%80%8D$1%E2%80%8D"); return 'data:image/svg+xml;charset=utf-8,' + svg; }); }