Это получается при компиляции FLProg располагает библиотеки по алфавиту?Naladchik писал(а):Попробуйте в библиотеке папку fonts переименовать как zfonts
Нужно попросить помочь наших гуру. Напишите, что Вы хотите от блока, может смогут помочь! Русский шрифт , я думаю можно решить аналогично как в блоках бегущих строк. В библиотеке в папке examples есть примеры, прокрутите все и узнаете , что может библиотека, и что Вы хотите.
Уже посмотрел! русский шрифт нашел правда маленький. Хотелось бы размер больше. Но походу придется самим как то "рисовать".aidar_i писал(а): ↑28.02.2018{, 14:36}Нужно попросить помочь наших гуру. Напишите, что Вы хотите от блока, может смогут помочь! Русский шрифт , я думаю можно решить аналогично как в блоках бегущих строк. В библиотеке в папке examples есть примеры, прокрутите все и узнаете , что может библиотека, и что Вы хотите.
Код: Выделить всё
void DrawMHD_2(){
// Running Text
dmd.clearScreen( true ); // Очистить экран //
dmd.selectFont(katakana); // Выбор шрифта //
dmd.drawMarquee("モスクワ.",8,(32*DISPLAYS_ACROSS)-1,0); // Вывод сообщений
long start=millis();
long timer=start;
boolean ret=false;
while(!ret){
if ((timer+40) < millis()) {
ret=dmd.stepMarquee(-1,0);
timer=millis();
}
}
aidar_i писал(а): ↑03.03.2018{, 01:04}Сделал симулятор Р10 на Протеус, русский шрифт не работает.
Прошу посмотреть скетч для блока, подсказать где ошибка, шрифт с кириллицей выше в библиотеке, SystemFont5x7.h(убрал rus)СпойлерПоказать#include <SPI.h>
#include <DMD2.h>
#include <fonts/SystemFont5x7.h>
#define DISPLAYS_WIDE 3
#define DISPLAYS_HIGH 1
SoftDMD dmd(DISPLAYS_WIDE,DISPLAYS_HIGH);
DMD_TextBox box(dmd, 0, 0, 32, 16);
String tape = "";
String utf8rus(String source)
{
int i,k;
String target;
unsigned char n;
char m[2] = { '0', '\0' };
k = source.length(); i = 0;
while (i < k) {
n = source; i++;
if (n >= 0xC0) {
switch (n) {
case 0xD0: {
n = source; i++;
if (n == 0x81) { n = 0xA8; break; }
if (n >= 0x90 && n <= 0xBF) n = n + 0x2F;
break;
}
case 0xD1: {
n = source; i++;
if (n == 0x91) { n = 0xB7; break; }
if (n >= 0x80 && n <= 0x8F) n = n + 0x6F;
break;
}
}
}
m[0] = n; target = target + String(m);
}
return target;
}
void setup() {
dmd.setBrightness(255);
dmd.selectFont(SystemFont5x7);
dmd.begin();
}
void loop() {
tape = utf8rus("АБВГДЕЖЗИЙКЛМНОПабвгдежзийклмноп");
dmd.drawString(0, 0, tape);
dmd.marqueeScrollX(-1);
}
aidar_i писал(а): ↑03.03.2018{, 01:04}Сделал симулятор Р10 на Протеус, русский шрифт не работает.
Прошу посмотреть скетч для блока, подсказать где ошибка, шрифт с кириллицей выше в библиотеке, SystemFont5x7.h(убрал rus)СпойлерПоказать#include <SPI.h>
#include <DMD2.h>
#include <fonts/SystemFont5x7.h>
#define DISPLAYS_WIDE 3
#define DISPLAYS_HIGH 1
SoftDMD dmd(DISPLAYS_WIDE,DISPLAYS_HIGH);
DMD_TextBox box(dmd, 0, 0, 32, 16);
String tape = "";
String utf8rus(String source)
{
int i,k;
String target;
unsigned char n;
char m[2] = { '0', '\0' };
k = source.length(); i = 0;
while (i < k) {
n = source; i++;
if (n >= 0xC0) {
switch (n) {
case 0xD0: {
n = source; i++;
if (n == 0x81) { n = 0xA8; break; }
if (n >= 0x90 && n <= 0xBF) n = n + 0x2F;
break;
}
case 0xD1: {
n = source; i++;
if (n == 0x91) { n = 0xB7; break; }
if (n >= 0x80 && n <= 0x8F) n = n + 0x6F;
break;
}
}
}
m[0] = n; target = target + String(m);
}
return target;
}
void setup() {
dmd.setBrightness(255);
dmd.selectFont(SystemFont5x7);
dmd.begin();
}
void loop() {
tape = utf8rus("АБВГДЕЖЗИЙКЛМНОПабвгдежзийклмноп");
dmd.drawString(0, 0, tape);
dmd.marqueeScrollX(-1);
}
aidar_i писал(а): ↑03.03.2018{, 01:04}Сделал симулятор Р10 на Протеус, русский шрифт не работает.
Прошу посмотреть скетч для блока, подсказать где ошибка, шрифт с кириллицей выше в библиотеке, SystemFont5x7.h(убрал rus)СпойлерПоказать#include <SPI.h>
#include <DMD2.h>
#include <fonts/SystemFont5x7.h>
#define DISPLAYS_WIDE 3
#define DISPLAYS_HIGH 1
SoftDMD dmd(DISPLAYS_WIDE,DISPLAYS_HIGH);
DMD_TextBox box(dmd, 0, 0, 32, 16);
String tape = "";
String utf8rus(String source)
{
int i,k;
String target;
unsigned char n;
char m[2] = { '0', '\0' };
k = source.length(); i = 0;
while (i < k) {
n = source; i++;
if (n >= 0xC0) {
switch (n) {
case 0xD0: {
n = source; i++;
if (n == 0x81) { n = 0xA8; break; }
if (n >= 0x90 && n <= 0xBF) n = n + 0x2F;
break;
}
case 0xD1: {
n = source; i++;
if (n == 0x91) { n = 0xB7; break; }
if (n >= 0x80 && n <= 0x8F) n = n + 0x6F;
break;
}
}
}
m[0] = n; target = target + String(m);
}
return target;
}
void setup() {
dmd.setBrightness(255);
dmd.selectFont(SystemFont5x7);
dmd.begin();
}
void loop() {
tape = utf8rus("АБВГДЕЖЗИЙКЛМНОПабвгдежзийклмноп");
dmd.drawString(0, 0, tape);
dmd.marqueeScrollX(-1);
}
Как щас я сделал. Поскольку мне надо три языка а именно: казахский, китайский и англ. Но слова уже сделаны заранее я взыл шрифт где есть по умолчанию Англ. и добавил туда килирицу и иероглицы. и вывожу их на панель! Вот так! Как именно ты хочешь выводить кириллицу ?
С помощью utf8rus. А нужно адреса правильно написать, пока не разобрался.tomas111 писал(а): ↑07.03.2018{, 11:21}Как