Ver Mensaje Individual
  #17 (permalink)  
Antiguo 27/09/2004, 16:37
Avatar de Takitei
Takitei
 
Fecha de Ingreso: septiembre-2004
Ubicación: Venezuela
Mensajes: 1.231
Antigüedad: 20 años, 2 meses
Puntos: 5
Pues estuve probando el script, corregí algunos errores de sintaxis que tenía y quedó en resumen asi:

Código PHP:
<?php
//recogemos el texto por el URL que enviamos a generar desde el link de imagen del HTML de nuestro formulario
$codigo=$_GET['visual'];

//nombres tipografías a usar (sin extensión .ttf)
$tipografias = array("arial","comic","times");

//directorio donde estén las fuentes (ruta absoluta) importante el último /
$tipografias_ruta "C:\WINDOWS\Fonts\\";
// $tipografias_ruta="/home/sito/public_html/fonts/"; linux

//inicializa eje X desde donde se empezará a dibujar el código (referente al tamaño de la caja)
$espacio 0;

//tamaño fuente.
$tamano_fuente 15;

//profundidad caracteres/digitos del código a generar (password).
$profundidad_codigo 8// (alfanuméricos)

//cálculo Ancho automático de la caja

$x=$profundidad_codigo*$tamano_fuente;
$y=$tamano_fuente;

// Iniciar la generación de la imagen. Se define una caja de $x por $y pixels.
$im imagecreate($x$y);

//definición Colores. Expresados en valores R G B (respectivamente).
$color_fondo imagecolorallocate($im255255255); // Blanco
$color_texto imagecolorallocate($im000); // Negro

for($caracter=0$caracter<=$profundidad_codigo$caracter++){
  
//seleccion de una tipografía aleatoria.
  
$indice_aleatorio=array_rand($tipografias);
  
$tipografia=$tipografias_ruta.$tipografias[$indice_aleatorio].'.ttf';

  
//generar el caracter gráfico.
  
imagettftext($im$tamano_fuente0$espacio$tamano_fuente$color_texto$tipografia $codigo{$caracter});
  echo 
$tipografia;
  
//separación entre caracteres
  
$espacio +=$tamano_fuente;
}

//cabecera HTTP la cual indica al navegador que la imagen que estamos generando es .PNG
header('Content-type: image/png');

//genera un png dinámico
imagepng($im);
//destruye la imagen del servidor
imagedestroy($im);
?>
Sin embargo... cuando accedo al script directo desde la URL, por ejemplo:
http://localhost/sitio/includes/gd_c...isual=12345678

Me aparece el siguiente error:

Uninitialized string offset: 8 in c:\AppServ\www\sitio\includes\gd_create.php on line 39

La línea 39 es esta:

Código PHP:
imagettftext($im$tamano_fuente0$espacio$tamano_fuente$color_texto$tipografia $codigo{$caracter}); 
¿A que se deberá?...
__________________
Takitei
Ingeniarte.com
DannyHerran.com
"Dadme un punto de apoyo y moveré la tierra" - Arquímedes.

Última edición por Takitei; 27/09/2004 a las 16:58