Или может у кого программулина какая есть для облегчения рисования.
ищу русский шрифт 6*4 или 6*5
- Сообщения: 392
- Зарегистрирован: Сб дек 12, 2009 02:15:45
Друзья. Понадобился мне тут для одного устройства русский знакогенератор 6 на 4, или 6 на 5 точек(главное 6 точек в высоту). Поискал в интернете, но не нашел. 8*6, 8*7 - валом, а вот такого как мне надо - нет. Может кто видел такой, подскажите где. а то самому муторно рисовать. Мне нужны только русские буквы, можно только строчные и основные знаки препинания. цифры я уже нарисовал, кстати очень симпотно получились для такого разрешения.
Или может у кого программулина какая есть для облегчения рисования.
Или может у кого программулина какая есть для облегчения рисования.
- Реклама
- Сообщения: 7518
- Зарегистрирован: Вс мар 29, 2009 22:09:05
Могу предложить софтину для натыкивания картинок, которую я написал для проекта Mega3D (собственно, в ней я создавал массив знакогенератора, но размер символа у меня 5х7). Поддерживает высоту символа до восьми точек, однако никто не мешает не использовать две строки. Формат выходного файла прост: каждый столбец - байт. В теме про Mega3D, в выложенном архиве лежит и другой софт, который может оказаться полезным.
Разница между теорией и практикой на практике гораздо больше, чем в теории.
- Сообщения: 392
- Зарегистрирован: Сб дек 12, 2009 02:15:45
Спасибо, если готового никто не подкинет, буду сам рисовать.
а чем можно конвертировать потом в шестнадцатеричный вид? я например нарисовал букву "0" 6на4. ваша программулина выдала файл который я открыл блокнотом и увидил "ь„„ь". я так понимаю блокнот вывел символы которые соответствуют кодам. а чем увидить именно сами коды в шестнадцатеричном виде ??
а чем можно конвертировать потом в шестнадцатеричный вид? я например нарисовал букву "0" 6на4. ваша программулина выдала файл который я открыл блокнотом и увидил "ь„„ь". я так понимаю блокнот вывел символы которые соответствуют кодам. а чем увидить именно сами коды в шестнадцатеричном виде ??
Можно открыть полученный файл hex-редактором, или поставить например notepad+ Я им бинарные файлы редактирую.
- Сообщения: 7518
- Зарегистрирован: Вс мар 29, 2009 22:09:05
А можно написать простейшую программу для конвертации, например, так (меня обуревает лень, поэтому прямо сюда пишу исходник в потоке мысли
):
Всего то.
Код: Выделить всё
#include <stdio.h>
#include <conio.h>
void main(void)
{
FILE *fin,*fout;
char ch;
fin=fopen("infile.m3d","rb");
fout=fopen("outfile.asm","wt");
if ((fin==NULL) || (fout==NULL))
{
printf("File i/o error.\n");
getch();
}
else
while(fscanf(fin,"%c",&ch)!=EOF)
fprintf(fout,"0x%X,",ch);
fclose(fin);
fclose(fout);
return 0;
}
Разница между теорией и практикой на практике гораздо больше, чем в теории.
- Реклама
Зачем? я например иногда делаю так:а чем можно конвертировать потом в шестнадцатеричный вид?
Код: Выделить всё
char30line0: set b'01111100'
char30line1: set b'11000110'
char30line2: set b'11001110'
char30line3: set b'11011110'
char30line4: set b'11110110'
char30line5: set b'11100110'
char30line6: set b'01111100'
char30line7: set b'00000000'
char31line0: set b'00110000'
char31line1: set b'01110000'
char31line2: set b'00110000'
char31line3: set b'00110000'
char31line4: set b'00110000'
char31line5: set b'00110000'
char31line6: set b'11111100'
char31line7: set b'00000000'
А люди посмотрят и скажут: "Собаки летят. Вот и осень."
- Сообщения: 392
- Зарегистрирован: Сб дек 12, 2009 02:15:45
короче отдал часик и нарисовал. Выкладываю, вдруг кому понадобиться, все таки 6на5 жуткая редкость в инете.
самая проблемная буква - щ, с остальными вроде сносно выкрутился....
самая проблемная буква - щ, с остальными вроде сносно выкрутился....
Код: Выделить всё
unsigned char letters [44][5]={
{0x1E, 0x29, 0x25, 0x1E, 0x00}, // 0
{0x00, 0x22, 0x3F, 0x20, 0x00}, // 1
{0x32, 0x29, 0x25, 0x22, 0x00}, // 2
{0x11, 0x25, 0x25, 0x1B, 0x00}, // 3
{0x07, 0x04, 0x04, 0x3F, 0x00}, // 4
{0x17, 0x25, 0x25, 0x19, 0x00}, // 5
{0x1E, 0x25, 0x25, 0x18, 0x00}, // 6
{0x01, 0x39, 0x05, 0x03, 0x00}, // 7
{0x1A, 0x25, 0x25, 0x1A, 0x00}, // 8
{0x06, 0x29, 0x29, 0x1E, 0x00}, // 9
{0x00, 0x36, 0x36, 0x00, 0x00}, // :
{0x00, 0x00, 0x00, 0x00, 0x00}, // пробел
{0x0C, 0x0C, 0x0C, 0x0C, 0x00}, // минус
{0x3C, 0x0A, 0x09, 0x3F, 0x00}, // А
{0x3F, 0x25, 0x25, 0x19, 0x00}, // Б
{0x3F, 0x25, 0x25, 0x1A, 0x00}, // В
{0x3F, 0x01, 0x01, 0x01, 0x00}, // Г
{0x30, 0x1E, 0x11, 0x1F, 0x30}, // Д
{0x3F, 0x25, 0x25, 0x25, 0x00}, // Е
{0x33, 0x0C, 0x3F, 0x0C, 0x33}, // З
{0x25, 0x25, 0x25, 0x3F, 0x00}, // Ж
{0x3F, 0x08, 0x04, 0x3F, 0x00}, // И
{0x3F, 0x0C, 0x12, 0x21, 0x00}, // К
{0x3C, 0x02, 0x01, 0x3F, 0x00}, // Л
{0x3F, 0x02, 0x04, 0x02, 0x3F}, // М
{0x3F, 0x04, 0x04, 0x3F, 0x00}, // Н
{0x1E, 0x21, 0x21, 0x1E, 0x00}, // О
{0x3F, 0x01, 0x01, 0x3F, 0x00}, // П
{0x3F, 0x09, 0x09, 0x06, 0x00}, // Р
{0x1E, 0x21, 0x21, 0x12, 0x00}, // С
{0x01, 0x3F, 0x01, 0x00, 0x00}, // Т
{0x27, 0x28, 0x28, 0x1F, 0x00}, // У
{0x06, 0x09, 0x3A, 0x09, 0x06}, // Ф
{0x33, 0x0C, 0x0C, 0x33, 0x00}, // Х
{0x3F, 0x20, 0x3F, 0x20, 0x00}, // Ц
{0x07, 0x08, 0x08, 0x3F, 0x00}, // Ч
{0x3F, 0x20, 0x3F, 0x20, 0x3F}, // Ш
{0x1F, 0x10, 0x1F, 0x10, 0x3F}, // Щ
{0x01, 0x3F, 0x24, 0x18, 0x00}, // Ъ
{0x3F, 0x24, 0x18, 0x00, 0x3F}, // Ы
{0x3F, 0x24, 0x18, 0x00, 0x00}, // Ь
{0x12, 0x21, 0x25, 0x1E, 0x00}, // Э
{0x3F, 0x04, 0x1E, 0x21, 0x1E}, // Ю
{0x26, 0x19, 0x09, 0x3F, 0x00}}; // Я
Последний раз редактировалось neon-f Пт май 14, 2010 00:21:38, всего редактировалось 1 раз.
- Сообщения: 79
- Зарегистрирован: Сб май 08, 2010 09:33:42
Писал подобную программу, правда 8*5 Символьный генератор, для получения 6*5 нужно будет использовать только верхние 6 строчек.


