Hola! Estoy un poco desesperado intentando que me funcionen las tildes.
Para localizar varios idiomas, estoy usando esto:
[spoiler]var search = argument0;
switch (Master.idioma) {
case "english": var pais = "english"; break;
case "spanish": var pais = "spanish"; break;
default: var pais = "english"; break;
}
ini_open("content.ini");
var findstr = ini_read_string(pais, string(search), "No String Found!");
ini_close();
findstr = string_replace_all(findstr, "*", "#");
return findstr;
[/spoiler]
(Segui un tutorial para esto)
Despues en el content.ini tengo textos con tildes, pero al usar
[spoiler]
draw_text(x, y, scr_txt(1));
[/spoiler]
no me reconoce ninguna tilde. En ingles lo escribe todo, pero en español se salta tooodas las silabas con acento e incluso "destruye" parcialmente la siguiente palabra.
La fuente esta puesta como ASCII (probar todas las opciones no funciona).
Alguien sabe que estoy haciendo mal?
Dos posibles razones:
La fuente que estás usando no posee caracteres especiales. Intenta probar con otra tipografía para salir de dudas.
O bien, hay problemas con la codificación del archivo que puedan estar dañando el texto. Intenta cifrar de alguna forma el texto (puedes usar base64) para no tener que añadir directamente los acentos
Cita de: NiuWeb en Marzo 28, 2018, 03:59:52 AM
Dos posibles razones:
La fuente que estás usando no posee caracteres especiales. Intenta probar con otra tipografía para salir de dudas.
O bien, hay problemas con la codificación del archivo que puedan estar dañando el texto. Intenta cifrar de alguna forma el texto (puedes usar base64) para no tener que añadir directamente los acentos
Gracias por tu comentario!
La fuente es Arial, acabo de probar con Verdana y tampoco funcionan los acentos. Creo que el fallo no viene de aqui.
La codificacion del archivo, te refieres al bloc de notas de Windows que uso para guardar cono .ini?
EDIT:
He estado buscando sobre el Base 64.
He probado a hacer esto:
aa= base64_encode(scr_txt(0));
Despues con:
draw_text(x,y,aa);
Y salia un texto raro (supongo que la codificacion), asi que probe con:
draw_text(x,y, base64_decode(aa));
y con:
draw_text(x,y, base64_decode(scr_txt(0));
Pero siguen sin salirme los acentos (y recortando las palabras que tienen acento).
Si usas Bloc de Notas, al guardar elige UTF-8 como codificación.
Cita de: Clamud en Marzo 28, 2018, 07:06:02 PM
Si usas Bloc de Notas, al guardar elige UTF-8 como codificación.
He intentado lo que me comentas, pero no funciona. Incluso he descargado el Notepad++ y le di a convertir a UTF-8 pero tampoco funciona. Despues cree otro archivo nuevo desde el Notepad++ como UTF-8 pero tampoco funciona :'( :'(
Lo acabo de conseguir, con el Notepad++ he creado un archivo nuevo, pero en vez de .ini como .txt y ahora si, por fin, me salen los acentos cambiando en vez de content.ini a content.txt (pense que no dejaria usar el comando ini_open()
Bueno, ha sido un fallo de estos tontos que me ha obligado a probar muchas cosas, buscar muchos foros, para ser algo asi de tonto. Por si acaso dejo este ocmentario, quizas le pueda ayudar a otra persona con el mismo problema.
Mil gracias Clamud y NiuWeb por la ayuda! Sin vosotros aun estaria perdido buscando soluciones :-[