Stramin, me ha funcionado el script, pero es sólo para evitar caracteres extraños... y yo en eso no tengo problema. Ahora lo alucinante es que hace 2 o 3 días que tengo un código que me centra el texto... pero dependiendo del número de letras. O sea, de horizontal me lo centra a la perfección, pero de vertical se coloca el string donde quiere. Quizá la clave está en el strlen ese, que creo que coloca el string en la pantalla dependiendo de la largada del string, pero he intentado ponerlo de varias maneras y eso es un festival de errores. El código es este:
Código PHP:
Ver original<?php
// texto a convertir
if( isset($_GET['string']).($_GET['string2']) && !empty($_GET['string']).($_GET['string2'])){ $string = trim($_GET['string']); $string2 = trim($_GET['string2']);
// tamaño de la imagen
// fondo blanco y texto azul
// escribimos el texto en la parte superior-izquierda
$xCentrado = (imagesx($im) - $cajaTexto[2]) / 2; $yCentrado = (imagesy($im) - $cajaTexto[3]) / 2; $xCentrado2 = (imagesx($im) - $cajaTexto2[2]) / 2; $yCentrado2 = (imagesy($im) - $cajaTexto2[3]) / 2; imagettftext($im,25,0,$xCentrado, $yCentrado, $textcolor,"times.ttf",$string); imagettftext($im,10,0,$xCentrado2, $yCentrado2, $textcolor2,"tahoma.ttf",$string2);
// mostrar la imagen
header("Content-type: image/png");
}else{ ?>
<form action="" align="left" name="form1" method="get" enctype="multipart/form-data">
<p><left><input name="imagen" type="file" size="20"></left></p>
<input type="text" style="text-align:center" name="string" value="Título" onfocus="if (this.value=='Título') this.value=''" onblur="if (this.value=='') this.value='Título'" size="20" onKeyUp="limita(this,100);" onKeyDown="limita(this,100);">
<p>
<input type="text" name="string2" style="text-align:center" value="Subtítulo" onfocus="if (this.value=='Subtítulo') this.value=''" onblur="if (this.value=='') this.value='Subtítulo'" size="20" onKeyUp="limita(this,400);" onKeyDown="limita(this,400);"></textarea>
<p>
<input type="submit" name="Submit" value="Enviar">
</form>
<?php } ?>
Ya me estoy liando con querer que suban una imagen aparte de la que se crea con php, pero no consigo que no me dé error. Sí que veo la que pongo directamente en el código, pero se trata de visualizar lo que saque el input (Pero bueno, estoy investigando, a ver qué consigo... Lo de centrar mejor lo dejo para lo último).
Ni caso de los echos, eso me servía a mí al principio.