/*globals debug: false */ /*exported Printer */ function Printer() { var _printer = null; var _linebuffer = ''; return { putChar: function(val) { if (!_printer || _printer.closed) { _printer = window.open('', '_blank','toolbar=0,location=0'); if (_printer) { _printer.document.title = 'Printer'; _printer.document.write('
'); _printer.document.write(''); window.focus(); } } var c = String.fromCharCode(val & 0x7f); if (_printer) { if (c == '\r') { _printer.document.write('
'); } else if (c == ' ') { _printer.document.write(' '); } else { _printer.document.write(c); } } else { if (c == '\r') { debug(_linebuffer); _linebuffer = ''; } else if (c == ' ') { _linebuffer += c; } } } }; }