diff --git a/editor/base64/Base64.js b/editor/base64/Base64.js
deleted file mode 100755
index 86ed8d47..00000000
--- a/editor/base64/Base64.js
+++ /dev/null
@@ -1,66 +0,0 @@
-// This code was written by Tyler Akins and has been placed in the
-// public domain. It would be nice if you left this header intact.
-// Base64 code from Tyler Akins -- http://rumkin.com
-
-var keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
-
-function encode64(input) {
- var output = "";
- var chr1, chr2, chr3;
- var enc1, enc2, enc3, enc4;
- var i = 0;
-
- do {
- chr1 = input.charCodeAt(i++);
- chr2 = input.charCodeAt(i++);
- chr3 = input.charCodeAt(i++);
-
- enc1 = chr1 >> 2;
- enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);
- enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);
- enc4 = chr3 & 63;
-
- if (isNaN(chr2)) {
- enc3 = enc4 = 64;
- } else if (isNaN(chr3)) {
- enc4 = 64;
- }
-
- output = output + keyStr.charAt(enc1) + keyStr.charAt(enc2) +
- keyStr.charAt(enc3) + keyStr.charAt(enc4);
- } while (i < input.length);
-
- return output;
-}
-
-function decode64(input) {
- var output = "";
- var chr1, chr2, chr3;
- var enc1, enc2, enc3, enc4;
- var i = 0;
-
- // remove all characters that are not A-Z, a-z, 0-9, +, /, or =
- input = input.replace(/[^A-Za-z0-9\+\/\=]/g, "");
-
- do {
- enc1 = keyStr.indexOf(input.charAt(i++));
- enc2 = keyStr.indexOf(input.charAt(i++));
- enc3 = keyStr.indexOf(input.charAt(i++));
- enc4 = keyStr.indexOf(input.charAt(i++));
-
- chr1 = (enc1 << 2) | (enc2 >> 4);
- chr2 = ((enc2 & 15) << 4) | (enc3 >> 2);
- chr3 = ((enc3 & 3) << 6) | enc4;
-
- output = output + String.fromCharCode(chr1);
-
- if (enc3 != 64) {
- output = output + String.fromCharCode(chr2);
- }
- if (enc4 != 64) {
- output = output + String.fromCharCode(chr3);
- }
- } while (i < input.length);
-
- return output;
-}
\ No newline at end of file
diff --git a/editor/svg-editor.html b/editor/svg-editor.html
index 2628c270..1b44fbe7 100644
--- a/editor/svg-editor.html
+++ b/editor/svg-editor.html
@@ -8,7 +8,6 @@
-
SVG-edit demo
diff --git a/editor/svgcanvas.js b/editor/svgcanvas.js
index d29bf59c..034b56dc 100644
--- a/editor/svgcanvas.js
+++ b/editor/svgcanvas.js
@@ -12,7 +12,7 @@ function SvgCanvas(c)
svgroot.setAttribute("width", 640);
svgroot.setAttribute("height", 480);
svgroot.setAttributeNS(null, "id", "svgroot");
- svgroot.setAttribute("xmlns", "http://www.w3.org/2000/svg");
+ svgroot.setAttribute("xmlns", svgns);
container.appendChild(svgroot);
var d_attr = null;
@@ -616,7 +616,7 @@ function SvgCanvas(c)
this.saveHandler = function(svg) {
//alert(svg);
- window.open("data:image/svg+xml;base64," + encode64(svg));
+ window.open("data:image/svg+xml;base64," + Utils.encode64(svg));
}
this.selectNone = function() {
@@ -624,3 +624,74 @@ function SvgCanvas(c)
}
}
+
+// Static class for various utility functions
+
+var Utils = {};
+
+// This code was written by Tyler Akins and has been placed in the
+// public domain. It would be nice if you left this header intact.
+// Base64 code from Tyler Akins -- http://rumkin.com
+
+Utils.keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
+
+Utils.encode64 = function(input) {
+ var output = "";
+ var chr1, chr2, chr3;
+ var enc1, enc2, enc3, enc4;
+ var i = 0;
+
+ do {
+ chr1 = input.charCodeAt(i++);
+ chr2 = input.charCodeAt(i++);
+ chr3 = input.charCodeAt(i++);
+
+ enc1 = chr1 >> 2;
+ enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);
+ enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);
+ enc4 = chr3 & 63;
+
+ if (isNaN(chr2)) {
+ enc3 = enc4 = 64;
+ } else if (isNaN(chr3)) {
+ enc4 = 64;
+ }
+
+ output = output + Utils.keyStr.charAt(enc1) + Utils.keyStr.charAt(enc2) +
+ Utils.keyStr.charAt(enc3) + Utils.keyStr.charAt(enc4);
+ } while (i < input.length);
+
+ return output;
+}
+
+Utils.decode64 = function(input) {
+ var output = "";
+ var chr1, chr2, chr3;
+ var enc1, enc2, enc3, enc4;
+ var i = 0;
+
+ // remove all characters that are not A-Z, a-z, 0-9, +, /, or =
+ input = input.replace(/[^A-Za-z0-9\+\/\=]/g, "");
+
+ do {
+ enc1 = Utils.keyStr.indexOf(input.charAt(i++));
+ enc2 = Utils.keyStr.indexOf(input.charAt(i++));
+ enc3 = Utils.keyStr.indexOf(input.charAt(i++));
+ enc4 = Utils.keyStr.indexOf(input.charAt(i++));
+
+ chr1 = (enc1 << 2) | (enc2 >> 4);
+ chr2 = ((enc2 & 15) << 4) | (enc3 >> 2);
+ chr3 = ((enc3 & 3) << 6) | enc4;
+
+ output = output + String.fromCharCode(chr1);
+
+ if (enc3 != 64) {
+ output = output + String.fromCharCode(chr2);
+ }
+ if (enc4 != 64) {
+ output = output + String.fromCharCode(chr3);
+ }
+ } while (i < input.length);
+
+ return output;
+}