ソースを参照

Fix svg image update for GUI

David Catuhe 5 年 前
コミット
c7fbba0d34
1 ファイル変更12 行追加0 行削除
  1. 12 0
      gui/src/2D/controls/image.ts

+ 12 - 0
gui/src/2D/controls/image.ts

@@ -406,6 +406,18 @@ export class Image extends Control {
             // check if object alr exist in document
             var svgExist = <HTMLObjectElement> document.body.querySelector('object[data="' + svgsrc + '"]');
             if (svgExist) {
+                var svgDoc = svgExist.contentDocument;
+                // get viewbox width and height, get svg document width and height in px
+                if (svgDoc && svgDoc.documentElement) {
+                    var vb = svgDoc.documentElement.getAttribute("viewBox");
+                    var docwidth = Number(svgDoc.documentElement.getAttribute("width"));
+                    var docheight = Number(svgDoc.documentElement.getAttribute("height"));
+                    if (vb && docwidth && docheight) {
+                        this._getSVGAttribs(svgExist, elemid);
+                        return value;
+                    }
+                }
+
                 // wait for object to load
                 svgExist.addEventListener("load", () => {
                     this._getSVGAttribs(svgExist, elemid);