apple2js/js/ui/printer.js

39 lines
1.2 KiB
JavaScript
Raw Normal View History

/*globals debug: false */
/*exported Printer */
function Printer() {
var _printer = null;
var _linebuffer = '';
return {
putChar: function(val) {
if (!_printer || _printer.closed) {
2016-11-22 05:17:34 +00:00
_printer = window.open('', '_blank','toolbar=0,location=0');
2016-11-28 01:28:49 +00:00
if (_printer) {
_printer.document.title = 'Printer';
_printer.document.write('<div style="font: 12px courier">');
_printer.document.write('<span>');
window.focus();
}
}
var c = String.fromCharCode(val & 0x7f);
2016-11-28 01:28:49 +00:00
if (_printer) {
if (c == '\r') {
_printer.document.write('<br /></span>');
} else if (c == ' ') {
_printer.document.write('&nbsp;');
} else {
_printer.document.write(c);
}
} else {
if (c == '\r') {
debug(_linebuffer);
_linebuffer = '';
} else if (c == ' ') {
_linebuffer += c;
}
}
}
};
}