Portal SAMP
[Ajuda] Por acentos em textdraw - Versão de Impressão

+- Portal SAMP (https://portalsamp.com)
+-- Fórum: SA-MP (https://portalsamp.com/forumdisplay.php?fid=5)
+--- Fórum: Área de suporte (https://portalsamp.com/forumdisplay.php?fid=6)
+--- Tópico: [Ajuda] Por acentos em textdraw (/showthread.php?tid=549)



Por acentos em textdraw - Levi.M - 24/12/2020

Alguém ai tem a função que permite por acentos em textdraw? Se possível disponibilize, estou precisando muito

Edit: Consegui a função, pra quem quiser usar:

Código PHP:
stock TextConverter(string[])
{
    for(new arraysize 0arraysize strlen(string); arraysize++)
    {
        if(strfind(string"â"true) != -1){new pos strfind(string"â"true); strdel(stringpospos+strlen("â")); strins(string"™"possizeof(pos));}
        if(strfind(string"ã"true) != -1){new pos strfind(string"ã"true); strdel(stringpospos+strlen("ã")); strins(string"š"possizeof(pos));}
        if(strfind(string"á"true) != -1){new pos strfind(string"á"true); strdel(stringpospos+strlen("á")); strins(string"˜"possizeof(pos));}
        if(strfind(string"é"true) != -1){new pos strfind(string"é"true); strdel(stringpospos+strlen("é")); strins(string"ž"possizeof(pos));}
        if(strfind(string"ú"true) != -1){new pos strfind(string"ú"true); strdel(stringpospos+strlen("ú")); strins(string"“"possizeof(pos));}
        if(strfind(string"ó"true) != -1){new pos strfind(string"ó"true); strdel(stringpospos+strlen("ó")); strins(string"¦"possizeof(pos));}
        if(strfind(string"ê"true) != -1){new pos strfind(string"ê"true); strdel(stringpospos+strlen("ê")); strins(string"Ÿ"possizeof(pos));}
        if(strfind(string"í"true) != -1){new pos strfind(string"í"true); strdel(stringpospos+strlen("í")); strins(string"¢"possizeof(pos));}
        if(strfind(string"ç"true) != -1){new pos strfind(string"ç"true); strdel(stringpospos+strlen("ç")); strins(string"œ"possizeof(pos));}
        if(strfind(string"ô"true) != -1){new pos strfind(string"ô"true); strdel(stringpospos+strlen("ô")); strins(string"§"possizeof(pos));}
    }
    return 1;




RE: Por acentos em textdraw - guikommander2 - 24/12/2020

Código PHP:
stock FixText(string[])
{
    new 
szFixed[1024], iPosiLen;

    for(
iLen strlen(string); iPos iLeniPos ++)
        switch(
string[iPos])
        {
            case 
'%':          szFixed[iPos] = 37;
            case 
'&':       szFixed[iPos] = 38;
            case 
'¡':          szFixed[iPos] = 64;
            case 
'°':          szFixed[iPos] = 124;
            case 
'À':          szFixed[iPos] = 128;
            case 
'Á':          szFixed[iPos] = 129;
            case 
'Â':          szFixed[iPos] = 130;
            case 
'Ä''Ã':  szFixed[iPos] = 131;
            case 
'Ç':          szFixed[iPos] = 133;
            case 
'È':          szFixed[iPos] = 134;
            case 
'É':          szFixed[iPos] = 135;
            case 
'Ê':          szFixed[iPos] = 136;
            case 
'Ë':       szFixed[iPos] = 137;
            case 
'Ì':          szFixed[iPos] = 138;
            case 
'Í':          szFixed[iPos] = 139;
            case 
'Î':          szFixed[iPos] = 140;
            case 
'Ï':          szFixed[iPos] = 141;
            case 
'Ò':          szFixed[iPos] = 142;
            case 
'Ó':          szFixed[iPos] = 143;
            case 
'Ô':          szFixed[iPos] = 144;
            case 
'Ö''Õ':  szFixed[iPos] = 145;
            case 
'Ù':          szFixed[iPos] = 146;
            case 
'Ú':          szFixed[iPos] = 147;
            case 
'Û':          szFixed[iPos] = 148;
            case 
'Ü':          szFixed[iPos] = 149;
            case 
'à':          szFixed[iPos] = 151;
            case 
'á':          szFixed[iPos] = 152;
            case 
'â':          szFixed[iPos] = 153;
            case 
'ä''ã':  szFixed[iPos] = 154;
            case 
'ç':          szFixed[iPos] = 156;
            case 
'è':          szFixed[iPos] = 157;
            case 
'é':          szFixed[iPos] = 158;
            case 
'ê':         szFixed[iPos] = 159;
            case 
'ë':         szFixed[iPos] = 160;
            case 
'ì':          szFixed[iPos] = 161;
            case 
'í':          szFixed[iPos] = 162;
            case 
'î':          szFixed[iPos] = 163;
            case 
'ï':          szFixed[iPos] = 164;
            case 
'ò':          szFixed[iPos] = 165;
            case 
'ó':          szFixed[iPos] = 166;
            case 
'ô':          szFixed[iPos] = 167;
            case 
'ö''õ':  szFixed[iPos] = 168;
            case 
'ù':          szFixed[iPos] = 169;
            case 
'ú':          szFixed[iPos] = 170;
            case 
'û':          szFixed[iPos] = 171;
            case 
'ü':          szFixed[iPos] = 172;
            case 
'Ñ':          szFixed[iPos] = 173;
            case 
'ñ':          szFixed[iPos] = 174;
            case 
'¿':          szFixed[iPos] = 175;
            case 
'`':       szFixed[iPos] = 177;
            default:        
szFixed[iPos] = string[iPos];
        }

    return 
szFixed;


Exemplo de uso:

Código:
PlayerTextDrawSetString(playerid, TextDraw[playerid], FixText(Texto));



RE: Por acentos em textdraw - Levi.M - 26/12/2020

(24/12/2020 13:58)guikommander2 Escreveu:
Código PHP:
stock FixText(string[])
{
    new szFixed[1024], iPosiLen;

    for(iLen strlen(string); iPos iLeniPos ++)
        switch(string[iPos])
        {
            case '%':          szFixed[iPos] = 37;
            case '&':       szFixed[iPos] = 38;
            case '¡':          szFixed[iPos] = 64;
            case '°':          szFixed[iPos] = 124;
            case 'À':          szFixed[iPos] = 128;
            case 'Á':          szFixed[iPos] = 129;
            case 'Â':          szFixed[iPos] = 130;
            case 'Ä''Ã':  szFixed[iPos] = 131;
            case 'Ç':          szFixed[iPos] = 133;
            case 'È':          szFixed[iPos] = 134;
            case 'É':          szFixed[iPos] = 135;
            case 'Ê':          szFixed[iPos] = 136;
            case 'Ë':       szFixed[iPos] = 137;
            case 'Ì':          szFixed[iPos] = 138;
            case 'Í':          szFixed[iPos] = 139;
            case 'Î':          szFixed[iPos] = 140;
            case 'Ï':          szFixed[iPos] = 141;
            case 'Ò':          szFixed[iPos] = 142;
            case 'Ó':          szFixed[iPos] = 143;
            case 'Ô':          szFixed[iPos] = 144;
            case 'Ö''Õ':  szFixed[iPos] = 145;
            case 'Ù':          szFixed[iPos] = 146;
            case 'Ú':          szFixed[iPos] = 147;
            case 'Û':          szFixed[iPos] = 148;
            case 'Ü':          szFixed[iPos] = 149;
            case 'à':          szFixed[iPos] = 151;
            case 'á':          szFixed[iPos] = 152;
            case 'â':          szFixed[iPos] = 153;
            case 'ä''ã':  szFixed[iPos] = 154;
            case 'ç':          szFixed[iPos] = 156;
            case 'è':          szFixed[iPos] = 157;
            case 'é':          szFixed[iPos] = 158;
            case 'ê':         szFixed[iPos] = 159;
            case 'ë':         szFixed[iPos] = 160;
            case 'ì':          szFixed[iPos] = 161;
            case 'í':          szFixed[iPos] = 162;
            case 'î':          szFixed[iPos] = 163;
            case 'ï':          szFixed[iPos] = 164;
            case 'ò':          szFixed[iPos] = 165;
            case 'ó':          szFixed[iPos] = 166;
            case 'ô':          szFixed[iPos] = 167;
            case 'ö''õ':  szFixed[iPos] = 168;
            case 'ù':          szFixed[iPos] = 169;
            case 'ú':          szFixed[iPos] = 170;
            case 'û':          szFixed[iPos] = 171;
            case 'ü':          szFixed[iPos] = 172;
            case 'Ñ':          szFixed[iPos] = 173;
            case 'ñ':          szFixed[iPos] = 174;
            case '¿':          szFixed[iPos] = 175;
            case '`':       szFixed[iPos] = 177;
            default:        szFixed[iPos] = string[iPos];
        }

    return szFixed;


Exemplo de uso:

Código:
PlayerTextDrawSetString(playerid, TextDraw[playerid], FixText(Texto));

Esse está muito melhor, obrigado.


RE: Por acentos em textdraw - LeleziiN - 27/12/2020

Tai um Exemplo bom

Código:
stock ConverterTexto(texto[])
{
    new string[256];
    for(new i = 0; texto[i]; ++i)
    {
        string[i] = texto[i];
        switch(string[i])
        {
            case 0xC0 .. 0xC3: string[i] -= 0x40;            case 0xC7 .. 0xC9: string[i] -= 0x42;            case 0xD2 .. 0xD5: string[i] -= 0x44;            case 0xD9 .. 0xDC: string[i] -= 0x47;            case 0xE0 .. 0xE3: string[i] -= 0x49;
            case 0xE7 .. 0xEF: string[i] -= 0x4B;            case 0xF2 .. 0xF5: string[i] -= 0x4D;            case 0xF9 .. 0xFC: string[i] -= 0x50;            case 0xC4, 0xE4: string[i] = 0x83;            case 0xC6, 0xE6: string[i] = 0x84;            case 0xD6, 0xF6: string[i] = 0x91;            case 0xD1, 0xF1: string[i] = 0xEC;            case 0xDF: string[i] = 0x96;            case 0xBF: string[i] = 0xAF;
        }
    }
    return string;
}


Código:
TextEntradaX[2] = TextDrawCreate(85.0000, 435.0000, ConverterTexto("        ~r~~h~#  ~w~~h~~h~Desejamos a você um bom jogo! ~r~~h~# ~g~~h~:]"));
    TextDrawFont(TextEntradaX[2], 3);
    //TextDrawColor(Textdraw0[I], 16777215);
    TextDrawSetOutline(TextEntradaX[2], 1);