[quote](для просмотра ссылки Вам необходимо авторизоваться) /quote]
В данном сообщении была разобрана программа распознавания текста и получения правильного текста. Я попытался, используя команду key, создать программу, которая бы вводила полученный текст, но она делает это слишком быстро. Подскажите, можно ли с помощью команды key, сделать так, чтобы между вводом букв были определенные интервалы времени? Если нет, то подскажите, пожалуйста, какой командой можно это сделать?
CODE:sleep(500);
string Text;
loadsymbolbase ("F:\ПРОГГИ\kibor_set\WASD2.sib");
int Color_Fon[9];
Color_Fon[0]=13224393; Color_Fon[1]=15987699; Color_Fon[2]=14540253; Color_Fon[3]=14013909; Color_Fon[4]=15790320; Color_Fon[5]=14474460; Color_Fon[6]=13882323; Color_Fon[7]=13553358; Color_Fon[8]=15132390;
readtext (EN, #Text, 4, 1, -1, 80, 50, -1, #Color_Fon[0], 5, -1, 710, 501, 1206, 621, -1);
//messagebox (Text);//тест
char c_text[100];//В этот массив запишем текст весь
int aw=size(Text);//Узнаем кол символов
//messagebox (aw);//тест
strcpy(#c_text[0], Text);//Скопируем текст с string в массив char
char A[300];
int X[300];
int kml=0;
int tkml;
int Min;
int tx;
int kor=0;
for (int n=0; n<aw; n++)//Перебираем посимвольно
{
if (c_text[n]!=' ' && symbolcorrect(kor)>0.5 && symbolheight(kor)>25) //если не пробел и корректность более 0.5 и высота более 25
{
A[kml]=c_text[n];//Сохраним символ
X[kml]=symbolxpos(kor);//Сохраним его координаты по X
kml++;
}
kor++;
}
A[kml]=0;
//messagebox (format(#A[0]));//тест
string T="";
if (kml>0)
{
tkml=0;
ee:;
Min=99999;
for (n=0; n<kml; n++)
{
if (X[n]<Min){Min=X[n]; tx=n;}//Если позиция этого символа самая левая и он не был сохранен
}
T=T+A[tx];//Допишем в string
X[tx]=100000;//Что бы его больше не считать укажем что он находится далеко правее
tkml++;
if (tkml<kml) goto ee;
}
key (T);// ввод текста |