Помогите создать универсальный инструмент для публикации русских букв с английскими

Не только. Тут ещё, как всегда, планы наполеоновские…код должен работать и на ПК, и на Айфоне, и на вебсервере…
Код, которого нет

На самом деле - меньше, потому, что русская О и латинская О не требуют двух разных картинок.

Если тока большие буквы, то 69 картинок.
Если еще и маленькие, то .. мне лень считать было, но не много.

ABCDEFGHIJKLMNOPQRSTUVXYZ  --> 26 картинок
БГДИЙЛПУФЦЧШЩЭЮЯ           --> 23
0123456789                 --> 10
,.-+()%#@!                 --> 10

Ничего страшного - глаза боятся, а руки делают. Начни с отрисовки знака пробела. А как набьешь руку - приступай к точке. Потом я тебе крутой трюк покажу - как запятую сделать из точки.

Пость сюда свои творения, на суд.

Babos, надо организовывать на форуме тайное общество - Кодд Русской Буквы.

тайные общества я люблю, но как же мы будем опознавать друг друга ?
тут же через рукопожатия не передать сигнал своим…

по букве “Ё” в UTF коде

БабосКод :sweat_smile:

это что… как в симпсонах, общество без гомеров?! после того как они масонами были ?))))
как же я тогда к вам туда вступлю ? я еще сил не набрался что бы эту букву сделать…

http://online-simpsons.ru/sezon-06/108-6-sezon-12-seriya.html

это вступительное испытание… у масонов тоже было посвящение

я не спроста оставил ссылку на мультик)))
там что бы вступить надо было всего лишь шаг сделать, 1 ! а не искать причину почему Ёё не отображается…
к тому же я как человек рассмотревший кучу предложений о вступлении в секты и общества, хотел уточнить про лифт, что бы не идти пешком по карьерной лестнице…
а то я знаю как оно бывает, работай работай и работай, отдавай себя всего им, а потом… а что кстати будет потом ?))))

вообще я бы победил эту проблему, если бы остались силы))) перехватил бы символы и специально для этих символов 2 букв написал бы парсер, с заменой их в коде…
так что если заинтересуете, то я может быстро вступлю(но это все же не точно)

Ты, главное, под ноги смотри. А то вступить можно во всякое… :wink:

мы общество то будем делать ?
а то у меня даже немного сил появилось, ровно для него…

#include <TFT_eSPI.h>
TFT_eSPI tft = TFT_eSPI();

void setup() {
tft.init();
tft.setRotation(3);
tft.fillScreen(TFT_BLACK);
pinMode(TFT_BL, OUTPUT);
digitalWrite(TFT_BL, HIGH);
// Сделаем текст менее видимым
tft.setTextColor(0x0841);
tft.setTextSize(1);
tft.setCursor(10, 60);
tft.println("test1");
tft.setCursor(30, 80);
tft.println("test1");
tft.setTextColor(0x0842);
tft.setCursor(10, 100);
tft.println("1123");
}

void loop() {
static uint32_t timer = 0;
if(millis() - timer > 3000) {
timer = millis();
// Мигание с минимальной видимостью
tft.setTextColor(0x3186); // Очень темный серый
tft.setCursor(50, 120);
tft.println("V");
delay(50); // Очень короткая вспышка
tft.setTextColor(TFT_BLACK);
tft.setCursor(50, 120);
tft.println("V");
}
}

даже воо, секретный способ общения уже готов…

BABIOS, в той же win-1251 символы ‘Ё’ и ‘ё’ отсутствуют как класс.
Стало быть если они так очень нужны, то можно тупо в шрифте взять какой нибудь другой не нужный/не используемый литерал и туда прописать эти буквы.

Чой-та?

Вон они, в кружочке

я сдаюсь, где там скрытый текст ?))))

согласен, пока v258 не скажет что подставить,

const uint8_t SystemRus5x7Bitmaps[] PROGMEM = {

и по сам не проверю, и не увижу, не поверю что есть…

и вот так выводить не считается!

char j = “\168\184”;
char i = “\320\20 \321\221”;

Глянул скетч-вариант своей электронной записки на сенсорном дисплее. Оказывается адафрукт работает BABOS с твоей тфт этой.

//ЗАПИСКА
//#include "Adafruit_GFX.h"     // Библиотека обработчика графики
#include <SPI.h>          
#include <TFT_eSPI.h>       // Hardware-specific library
#include "ris_.h"//файл хранения массивов фотокартинок
TFT_eSPI tft = TFT_eSPI();  // Invoke custom library
#define h  5 //
uint16_t color=tft.color565(0,0,0);
uint16_t x, y;// Переменные для работы с координатами нажатий
int Xk=0,Yk=h;// переменные хранения положения курсора
bool bukva=true;//
String znaki[]={"1","2","3","4","5","6","7","8","9",",","."," ","0",
                "Й","Ц","У","К","Е","Н","Г","Ш","Щ","З","Х"," ","Ъ",            
                "Ф","Ы","В","А","П","Р","О","Л","Д","Ж","Э"," ","?",
                "Я","Ч","С","М","И","Т","Ь","Б","Ю",";","!"," ","*",
};
String znaki_[]={"1","2","3","4","5","6","7","8","9",",","."," ","0",
                "й","ц","у","к","е","н","г","ш","щ","з","х"," ","ъ",            
                "ф","ы","в","а","п","р","о","л","д","ж","э"," ","?",
                "я","ч","с","м","и","т","ь","б","ю",";","!"," ","*",
}; 

void setup(){
 Serial.begin(9600);
tft.init();
tft.setRotation(3);// Переводим дисплей в альбомную ориентацию
fon();//
 }
 
void loop()
{
  if (tft.getTouch(&x, &y)) {
   
   if((x!=-1) && (y!=-1))          // Если обе координаты в положительном диапазоне (т.е. если есть нажатие) 
    {
      x += 0 ;                      // Корректируем координату с учетом калибровочных данных
      y += 5;                       // Корректируем координату с учетом калибровочных данных
      x=480-x*0.97;
      y=y*1.00;
   // 
     // 
      //Serial.print(x);Serial.print(" ");Serial.println(y); 
      klava();
     //   
 
   //   
      }
  }
   delay(100);//
 }
///////////////////////////////////////
void klava(){
 if(x>120&&x<355&&y>220){//ограничение клавиатуры 
 int N=0;
 N=(x-120)/18+((y-220)/25)*13;//определяем соответсвие нажатой кнопки-буквы и номера буквы в массиве
// Serial.println(N);

if(N!=11&&N!=24&&N!=37){//пишем буквы
tft.setCursor(Xk,Yk);if(bukva){tft.print(znaki[N]);}else{tft.print(znaki_[N]);}Xk=Xk+18;if(Xk>18*25&&Yk<168){Xk=0;Yk=Yk+28;}
tft.setTextColor(tft.color565(255,255,255),tft.color565(255,0,0));tft.print(" ");tft.setTextColor(tft.color565(120,100,220),tft.color565(238,206,155));//
}
if(N==11){//стираем курсором
tft.setCursor(Xk,Yk);tft.setTextColor(tft.color565(255,255,255),tft.color565(0,0,0));tft.print(" ");Xk=Xk-18;if(Yk>h&&Xk<0){Xk=18*25;Yk=Yk-28;}if(Xk<0){Xk=0;}tft.setCursor(Xk,Yk);
tft.setTextColor(tft.color565(255,255,255),tft.color565(255,0,0));tft.print(" ");tft.setTextColor(tft.color565(120,100,220),tft.color565(238,206,155));//  
}
if(N==24){fon();}//стираем всё 
if(N==37){bukva=!bukva;ris_klava();delay(200);}//смена размера букв и внешнего вида клавиатуры
 }
}
///////////////////////////////////////
void fon(){
tft.fillScreen(color);//заливка фона
tft.setTextSize(3); tft.setTextColor(tft.color565(255,255,255),tft.color565(255,0,0));// отрисовка клавиатуры
//tft.setCursor(120,220); tft.println("123456789,. 0");
//tft.setCursor(120,245); tft.println("ЙЦУКЕНГШЩЗХ Ъ");
//tft.setCursor(120,270); tft.println("фЫВАПРОЛДЖЭ ?");
//tft.setCursor(120,295); tft.println("ЯЧСМИТЬБЮ;! *");
tft.pushImage(120, 220, 234, 100, (const uint16_t*) klava_1);
Xk=0,Yk=h;bukva=true;tft.setCursor(Xk,Yk);tft.print(" ");//отрисовка курсора
tft.setTextColor(tft.color565(120,100,220),tft.color565(238,206,155));//
}
//////////////////////////////////////
void ris_klava(){
 if(bukva){ 
tft.setTextColor(tft.color565(255,255,255),tft.color565(255,0,0));// отрисовка клавиатуры
//tft.setCursor(120,220); tft.println("123456789,. 0");
//tft.setCursor(120,245); tft.println("ЙЦУКЕНГШЩЗХ Ъ");
//tft.setCursor(120,270); tft.println("фЫВАПРОЛДЖЭ ?");
//tft.setCursor(120,295); tft.println("ЯЧСМИТЬБЮ;! *");
tft.pushImage(120, 220, 234, 100, (const uint16_t*) klava_1);
 }
 else{
tft.setTextColor(tft.color565(255,255,255),tft.color565(255,150,0));// отрисовка клавиатуры
//tft.setCursor(120,220); tft.println("123456789,. 0");
//tft.setCursor(120,245); tft.println("йцукенгшщзх ъ");
//tft.setCursor(120,270); tft.println("фывапролджэ ?");
//tft.setCursor(120,295); tft.println("ячсмитьбю;! *"); 
tft.pushImage(120, 220, 234, 100, (const uint16_t*) klava_2); 
 }
tft.setTextColor(tft.color565(120,100,220),tft.color565(238,206,155));//  
}
//////////////////////////////////////



Клава внизу, набираемый текст вверху :slight_smile:

А глазки разуть? Я ж показал, что они есть :wink:

Но проще всего через смартфон наговаривать на экран.


А ещё проще рукой писать, тут даже уно хватает.

Брешу, закоментирована. Глаза разул :slight_smile:
…интересно, а как же она тогда русские буквы выводит? Всё забыл, как делал.

lilik мне v258 не верит, скажите вы ему хоть что Ёё там нету