А я не могу объяснить как именно.
Легче описать так: например если в файле 1_1.$OM посмотреть на изображение русской буквы "у"-маленькая, то между буквой у и т видна какая-то "лишняя" фигня из одного пикселя - так вот это и есть крючочек нижнего хвостика этой буквы "у", печатаемого девятой иголкой, весь этот байт побитно как бы "разворачивают" на 90 градусов под бкуву у...
Как-то так. Аналогичным образрм печатается ";".
На приложенный ранее скрин для эксперимента я вывел содержимое ПЗУ вот таким кодом:
Хотя нет, это уже вывод от какого-то другого моего эксперимента, это я уже видимо мостил печать в зависимости от кода выбора языка. Но суть от этого не меняется.Код:COLORREF black = PALETTERGB(0, 0, 0); COLORREF white = PALETTERGB(0xFF, 0xFF, 0xFF); COLORREF cr; byte PRNROM[2048]; FILE *fptr; PRNROM[2048]; int ii = 0; fopen_s(&fptr,"robotron_font.rom","rb"); if (fptr != NULL) { for (ii=0; ii<2048; ii++) PRNROM[ii] = getc(fptr); fclose(fptr); } int x = 0; // Левый верхний угол y = 120; for (int j = 0; j < 127; j++) { //127 for (int b = 0; b < 8; b++) { int bit = (PRNROM[j*10-2] >> b) & 1; bit ? cr = white : cr = black; SetPixel(dc, j*10-1 + b, y + 1, cr); } for (int i = 1; i < 10; i++) { for (int b = 0; b < 8; b++) { int bit = (PRNROM[j*10+i-2] >> b) & 1; bit ? cr = white : cr = black; SetPixel(dc, j*10+i-2, y - b, cr); } } } y = 130; for (int j = 127; j < 255; j++) { for (int b = 0; b < 8; b++) { int bit = (PRNROM[j*10-2] >> b) & 1; bit ? cr = white : cr = black; SetPixel(dc, j*10-1 + b - 680, y + 1, cr); } for (int i = 1; i < 10; i++) { for (int b = 0; b < 8; b++) { int bit = (PRNROM[j*10+i-2] >> b) & 1; bit ? cr = white : cr = black; SetPixel(dc, j*10+i-2 - 680, y - b, cr); } } }
if (c == 0x0F) // Принтер использует кодировку англ. раскладкой
iss = ar1;
else if (c == 0x0E) // Кодировка рус.
iss = ar2;
unsigned char ar1[] = " !\"#0%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]0_`abcdefghijklmnopqrstuvwxyz{|}0";
unsigned char ar2[] = " !\"#0%&'()*+,-./0123456789:;<=>?юабцдефгхийклмноп ярстужвьызшэщчъЮАБЦДЕФГХИ ЙКЛМНОПЯРСТУЖВЬЫЗШЭЩЧ";




. Аналогичным образрм печатается ";".
Ответить с цитированием
