[Sie-announce] SIEコード [1242] PaintColorオブジェクトにfillElementプロパティを追加

アーカイブの一覧に戻る

svnno****@sourc***** svnno****@sourc*****
2009年 9月 13日 (日) 19:35:16 JST


Revision: 1242
          http://sourceforge.jp/projects/sie/svn/view?view=rev&revision=1242
Author:   dhrname
Date:     2009-09-13 19:35:16 +0900 (Sun, 13 Sep 2009)

Log Message:
-----------
PaintColorオブジェクトにfillElementプロパティを追加

Modified Paths:
--------------
    branches/05x/051/sie.js

Modified: branches/05x/051/sie.js
===================================================================
--- branches/05x/051/sie.js	2009-09-12 14:45:23 UTC (rev 1241)
+++ branches/05x/051/sie.js	2009-09-13 10:35:16 UTC (rev 1242)
@@ -218,6 +218,7 @@
       }
     }
   }
+  CollectGarbage(); //IEの非公式なやりかた
   } catch(e) {stlog.add(e,138);}
 }
 SVGtoVML.prototype.setObject = function stvsetob( /*SVGElement*/ arr, /*float*/ sw, /*float*/ sh) {
@@ -952,6 +953,12 @@
       name = null;
     }
   }
+  if (this.fill !== "none") {
+    this.fillElement = document.createElement("v:fill");
+  }
+  if (this.stroke !== "none") {
+    this.strokeElement = document.createElement("v:stroke");
+  }
 }
   return this;
 }
@@ -1014,7 +1021,7 @@
   if (this.fill === "none") {
     el.filled = "false";
   } else {
-    var fillElement = document.createElement("v:fill");
+    var fillElement = this.fillElement;
     var isRadial = false;
     try {
     if (this._urlreg.test(this.fill)) { //fill属性の値がurl(#id)ならば、idを設定したグラデーション関連要素を呼び出す
@@ -1037,7 +1044,7 @@
   if (this.stroke === "none") {
     el.stroked = "false";
   } else {
-    var strokeElement = document.createElement("v:stroke");
+    var strokeElement = this.strokeElement;
     try {
     var sw = new STLength(this.strokewidth, Math.sqrt((w*w + h*h) / 2));
     var swx = sw.value * Math.sqrt(Math.abs(matrix.determinant()));




Sie-announce メーリングリストの案内
アーカイブの一覧に戻る