ok
Direktori : /home/importfo/public_html/inddigmedia.in/jss/ |
Current File : /home/importfo/public_html/inddigmedia.in/jss/text.js |
$.textLine = function(opt) { var textLength = opt.text.length, size = 5; for (var i = 0; i < textLength; i++) { var letter = $.definitions.letters[(opt.text.charAt(i))] || $.definitions.letters['unknown']; for (var y = 0; y < size; y++) { for (var x = 0; x < size; x++) { if (letter[y][x] === 1) { opt.ctx.rect(opt.x + (x * opt.scale) + ((size * opt.scale) + opt.hspacing) * i, opt.y + y * opt.scale, opt.scale, opt.scale); } } } } }; $.text = function(opt) { var size = 5, letterSize = size * opt.scale, lines = opt.text.split('\n'), linesCopy = lines.slice(0), lineCount = lines.length, longestLine = linesCopy.sort(function(a, b) { return b.length - a.length; })[0], textWidth = (longestLine.length * letterSize) + ((longestLine.length - 1) * opt.hspacing), textHeight = (lineCount * letterSize) + ((lineCount - 1) * opt.vspacing); var sx = opt.x, sy = opt.y, ex = opt.x + textWidth, ey = opt.y + textHeight; if (opt.halign == 'center') { sx = opt.x - textWidth / 2; ex = opt.x + textWidth / 2; } else if (opt.halign == 'right') { sx = opt.x - textWidth; ex = opt.x; } if (opt.valign == 'center') { sy = opt.y - textHeight / 2; ey = opt.y + textHeight / 2; } else if (opt.valign == 'bottom') { sy = opt.y - textHeight; ey = opt.y; } var cx = sx + textWidth / 2, cy = sy + textHeight / 2; if (opt.render) { for (var i = 0; i < lineCount; i++) { var line = lines[i], lineWidth = (line.length * letterSize) + ((line.length - 1) * opt.hspacing), x = opt.x, y = opt.y + (letterSize + opt.vspacing) * i; if (opt.halign == 'center') { x = opt.x - lineWidth / 2; } else if (opt.halign == 'right') { x = opt.x - lineWidth; } if (opt.valign == 'center') { y = y - textHeight / 2; } else if (opt.valign == 'bottom') { y = y - textHeight; } if (opt.snap) { x = Math.floor(x); y = Math.floor(y); } $.textLine({ ctx: opt.ctx, x: x, y: y, text: line, hspacing: opt.hspacing, scale: opt.scale }); } } return { sx: sx, sy: sy, cx: cx, cy: cy, ex: ex, ey: ey, width: textWidth, height: textHeight } };;