Skip to content

Instantly share code, notes, and snippets.

@mcahriman
Last active August 29, 2015 13:58
Show Gist options
  • Save mcahriman/10020832 to your computer and use it in GitHub Desktop.
Save mcahriman/10020832 to your computer and use it in GitHub Desktop.
Tray Empty
px_font = [ 0x00, 0x00, 0x00, 0x00, 0x00,// (space)
0x00, 0x00, 0x5F, 0x00, 0x00,// !
0x00, 0x07, 0x00, 0x07, 0x00,// "
0x14, 0x7F, 0x14, 0x7F, 0x14,// #
0x24, 0x2A, 0x7F, 0x2A, 0x12,// $
0x23, 0x13, 0x08, 0x64, 0x62,// %
0x36, 0x49, 0x55, 0x22, 0x50,// &
0x00, 0x05, 0x03, 0x00, 0x00,// '
0x00, 0x1C, 0x22, 0x41, 0x00,// (
0x00, 0x41, 0x22, 0x1C, 0x00,// )
0x08, 0x2A, 0x1C, 0x2A, 0x08,// *
0x08, 0x08, 0x3E, 0x08, 0x08,// +
0x00, 0x50, 0x30, 0x00, 0x00,// ,
0x08, 0x08, 0x08, 0x08, 0x08,// -
0x00, 0x60, 0x60, 0x00, 0x00,// .
0x20, 0x10, 0x08, 0x04, 0x02,// /
0x3E, 0x51, 0x49, 0x45, 0x3E,// 0
0x00, 0x42, 0x7F, 0x40, 0x00,// 1
0x42, 0x61, 0x51, 0x49, 0x46,// 2
0x21, 0x41, 0x45, 0x4B, 0x31,// 3
0x18, 0x14, 0x12, 0x7F, 0x10,// 4
0x27, 0x45, 0x45, 0x45, 0x39,// 5
0x3C, 0x4A, 0x49, 0x49, 0x30,// 6
0x01, 0x71, 0x09, 0x05, 0x03,// 7
0x36, 0x49, 0x49, 0x49, 0x36,// 8
0x06, 0x49, 0x49, 0x29, 0x1E,// 9
0x00, 0x36, 0x36, 0x00, 0x00,// :
0x00, 0x56, 0x36, 0x00, 0x00,// ;
0x00, 0x08, 0x14, 0x22, 0x41,// <
0x14, 0x14, 0x14, 0x14, 0x14,// =
0x41, 0x22, 0x14, 0x08, 0x00,// >
0x02, 0x01, 0x51, 0x09, 0x06,// ?
0x32, 0x49, 0x79, 0x41, 0x3E,// @
0x7E, 0x11, 0x11, 0x11, 0x7E,// A
0x7F, 0x49, 0x49, 0x49, 0x36,// B
0x3E, 0x41, 0x41, 0x41, 0x22,// C
0x7F, 0x41, 0x41, 0x22, 0x1C,// D
0x7F, 0x49, 0x49, 0x49, 0x41,// E
0x7F, 0x09, 0x09, 0x01, 0x01,// F
0x3E, 0x41, 0x41, 0x51, 0x32,// G
0x7F, 0x08, 0x08, 0x08, 0x7F,// H
0x00, 0x41, 0x7F, 0x41, 0x00,// I
0x20, 0x40, 0x41, 0x3F, 0x01,// J
0x7F, 0x08, 0x14, 0x22, 0x41,// K
0x7F, 0x40, 0x40, 0x40, 0x40,// L
0x7F, 0x02, 0x04, 0x02, 0x7F,// M
0x7F, 0x04, 0x08, 0x10, 0x7F,// N
0x3E, 0x41, 0x41, 0x41, 0x3E,// O
0x7F, 0x09, 0x09, 0x09, 0x06,// P
0x3E, 0x41, 0x51, 0x21, 0x5E,// Q
0x7F, 0x09, 0x19, 0x29, 0x46,// R
0x46, 0x49, 0x49, 0x49, 0x31,// S
0x01, 0x01, 0x7F, 0x01, 0x01,// T
0x3F, 0x40, 0x40, 0x40, 0x3F,// U
0x1F, 0x20, 0x40, 0x20, 0x1F,// V
0x7F, 0x20, 0x18, 0x20, 0x7F,// W
0x63, 0x14, 0x08, 0x14, 0x63,// X
0x03, 0x04, 0x78, 0x04, 0x03,// Y
0x61, 0x51, 0x49, 0x45, 0x43,// Z
0x00, 0x00, 0x7F, 0x41, 0x41,// [
0x02, 0x04, 0x08, 0x10, 0x20,// "\"
0x41, 0x41, 0x7F, 0x00, 0x00,// ]
0x04, 0x02, 0x01, 0x02, 0x04,// ^
0x40, 0x40, 0x40, 0x40, 0x40,// _
0x00, 0x01, 0x02, 0x04, 0x00,// `
0x20, 0x54, 0x54, 0x54, 0x78,// a
0x7F, 0x48, 0x44, 0x44, 0x38,// b
0x38, 0x44, 0x44, 0x44, 0x20,// c
0x38, 0x44, 0x44, 0x48, 0x7F,// d
0x38, 0x54, 0x54, 0x54, 0x18,// e
0x08, 0x7E, 0x09, 0x01, 0x02,// f
0x08, 0x14, 0x54, 0x54, 0x3C,// g
0x7F, 0x08, 0x04, 0x04, 0x78,// h
0x00, 0x44, 0x7D, 0x40, 0x00,// i
0x20, 0x40, 0x44, 0x3D, 0x00,// j
0x00, 0x7F, 0x10, 0x28, 0x44,// k
0x00, 0x41, 0x7F, 0x40, 0x00,// l
0x7C, 0x04, 0x18, 0x04, 0x78,// m
0x7C, 0x08, 0x04, 0x04, 0x78,// n
0x38, 0x44, 0x44, 0x44, 0x38,// o
0x7C, 0x14, 0x14, 0x14, 0x08,// p
0x08, 0x14, 0x14, 0x18, 0x7C,// q
0x7C, 0x08, 0x04, 0x04, 0x08,// r
0x48, 0x54, 0x54, 0x54, 0x20,// s
0x04, 0x3F, 0x44, 0x40, 0x20,// t
0x3C, 0x40, 0x40, 0x20, 0x7C,// u
0x1C, 0x20, 0x40, 0x20, 0x1C,// v
0x3C, 0x40, 0x30, 0x40, 0x3C,// w
0x44, 0x28, 0x10, 0x28, 0x44,// x
0x0C, 0x50, 0x50, 0x50, 0x3C,// y
0x44, 0x64, 0x54, 0x4C, 0x44,// z
0x00, 0x08, 0x36, 0x41, 0x00,// {
0x00, 0x00, 0x7F, 0x00, 0x00,// |
0x00, 0x41, 0x36, 0x08, 0x00,// }
0x08, 0x08, 0x2A, 0x1C, 0x08,// ->
0x08, 0x1C, 0x2A, 0x08, 0x08,// <- (0x7f)
0x7E, 0x11, 0x11, 0x11, 0x7E,// A 0x80
0x7F, 0x49, 0x49, 0x49, 0x30,// Б
0x7F, 0x49, 0x49, 0x49, 0x36,// B
0x7F, 0x01, 0x01, 0x01, 0x01,// Г
0x60, 0x3E, 0x21, 0x3F, 0x60,// Д
0x7F, 0x49, 0x49, 0x49, 0x41,// Е
0x67, 0x18, 0x7F, 0x18, 0x67,// Ж
0x22, 0x41, 0x49, 0x49, 0x36,// 3
0x7F, 0x10, 0x08, 0x04, 0x7F,// И
0x7F, 0x10, 0x09, 0x04, 0x7F,// Й
0x7F, 0x08, 0x14, 0x22, 0x41,// K
0x40, 0x3E, 0x01, 0x01, 0x7E,// Л
0x7F, 0x02, 0x04, 0x02, 0x7F,// M
0x7F, 0x08, 0x08, 0x08, 0x7F,// H
0x3E, 0x41, 0x41, 0x41, 0x3E,// O
0x7F, 0x01, 0x01, 0x01, 0x7F,// П
0x7F, 0x09, 0x09, 0x09, 0x06,// P
0x3E, 0x41, 0x41, 0x41, 0x22,// C
0x01, 0x01, 0x7F, 0x01, 0x01,// T
0x27, 0x48, 0x48, 0x48, 0x3F,// У
0x1E, 0x21, 0x7F, 0x21, 0x1E,// Ф
0x63, 0x14, 0x08, 0x14, 0x63,// X
0x3F, 0x20, 0x20, 0x3F, 0x40,// Ц
0x1F, 0x10, 0x10, 0x10, 0x7F,// Ч
0x7F, 0x40, 0x7F, 0x40, 0x7F,// Ш
0x3F, 0x20, 0x3F, 0x20, 0x7F,// Щ
0x01, 0x7F, 0x44, 0x44, 0x38,// Ъ
0x7F, 0x44, 0x7C, 0x00, 0x7F,// Ы
0x7F, 0x44, 0x44, 0x44, 0x38,// Ь
0x22, 0x41, 0x49, 0x49, 0x3E,// Э
0x7F, 0x08, 0x7F, 0x41, 0x7F,// Ю
0x46, 0x29, 0x19, 0x09, 0x7F,// Я
0x20, 0x54, 0x54, 0x54, 0x78,// a
0x3C, 0x4A, 0x4A, 0x4B, 0x30,// б
0x7C, 0x54, 0x54, 0x58, 0x20,// в
0x7C, 0x04, 0x04, 0x04, 0x04,// г
0x60, 0x38, 0x24, 0x3C, 0x60,// д
0x38, 0x54, 0x54, 0x54, 0x18,// e
0x74, 0x08, 0x7C, 0x08, 0x74,// ж
0x28, 0x44, 0x54, 0x54, 0x28,// з
0x7C, 0x20, 0x10, 0x08, 0x7C,// и
0x7C, 0x21, 0x12, 0x09, 0x7C,// й
0x7C, 0x10, 0x10, 0x28, 0x44,// к
0x40, 0x78, 0x04, 0x04, 0x7C,// л
0x7C, 0x08, 0x10, 0x08, 0x7C,// м
0x7C, 0x10, 0x10, 0x10, 0x7C,// н
0x38, 0x44, 0x44, 0x44, 0x38,// o
0x7C, 0x04, 0x04, 0x04, 0x7C,// п
0x7C, 0x14, 0x14, 0x14, 0x08,// p
0x38, 0x44, 0x44, 0x44, 0x28,// c
0x04, 0x04, 0x7C, 0x04, 0x04,// т
0x0C, 0x50, 0x50, 0x50, 0x3C,// y
0x18, 0x24, 0x7C, 0x24, 0x18,// ф
0x44, 0x28, 0x10, 0x28, 0x44,// х
0x3C, 0x20, 0x20, 0x3C, 0x40,// ц
0x1C, 0x20, 0x20, 0x20, 0x7C,// ч
0x7C, 0x40, 0x7C, 0x40, 0x7C,// ш
0x3C, 0x20, 0x3C, 0x20, 0x7C,// щ
0x04, 0x7C, 0x48, 0x48, 0x30,// ъ
0x7C, 0x48, 0x48, 0x30, 0x7C,// ы
0x7C, 0x48, 0x48, 0x48, 0x30,// ь
0x28, 0x44, 0x54, 0x54, 0x38,// э
0x7C, 0x38, 0x44, 0x44, 0x38,// ю
0x48, 0x34, 0x14, 0x14, 0x7C,// я
0x7E, 0x4B, 0x4A, 0x4B, 0x42,// Ё
0x38, 0x55, 0x54, 0x55, 0x18 ] // ё ;
FgetChar = function(font, char_id) {
var r_bit_array = [];
var bit_index=0;
for(var i = 0; i < 5; i++ ) {
for(var ib = 0; ib < 8; ib++) {
r_bit_array[bit_index++] = (font[char_id*5+i] & (1 << (7-ib))) != 0 ? 1 : 0;
}
}
return r_bit_array;
}
div_filled = "<div style='width:4px; height:4px; float:left;background-color:#000; border:1px solid grey;'></div>";
div_empty = "<div style='width:4px; height:4px; float:left;background-color:#fff;border:1px solid #f1f1f1;'></div>";
div_break = "<div style='clear:both;'></div>";
//5x7 by default
function draw_chars(r_bit_array, w, h) {
for(col=0; col < h; col++) {
for(row=0; row < w; row++) {
document.write(r_bit_array[col*w+row]? div_filled:div_empty );
}
document.write(div_break);
}
document.close();
}
function draw_chars_v(r_bit_array, w, h) {
ret = ''
for(col=0; col < w; col++) {
for(row=0; row < h; row++) {
ret += (r_bit_array[row*w+w-col]? div_filled:div_empty );
}
ret += div_break;
}
return ret;
}
function display_str_browser(str) {
for(i=0;i<str.length;i++) {
document.write( "<div style='float:left; width:35px; height:60px;'>" +
draw_chars_v(FgetChar(px_font, str.charCodeAt(i) - 0x20), 8, 5) +
"</div>");
};
document.close();
}
display_str_browser("Paper Empty in tray 1 ");
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment