Cita:
Iniciado por GatorV
Ve la documentación de PHP el orden de los parámetros para
imagetfttext.
Saludos.
Por mas que leo la documentacion... no me funciona...
Código PHP:
<?php
// Iniciamos uso de sesiones ...
session_start();
//recogemos el texto por el URL que enviamos a generar desde el link de imagen del HTML de nuestro formulario
$codigo=$_SESSION['mipass'];
//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=150;
$y=40;
// 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($im, 0, 0, 0); // Blanco
$color_texto = imagecolorallocate($im, 255, 255, 255); // 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';
//separación entre caracteres
$espacio +=$tamano_fuente;
//generar el caracter gráfico.
imagettftext($im, $tamano_fuente, 0, $espacio, $tamano_fuente, $color_texto, $tipografia , $codigo{$caracter});
imagefttext($im, $tamano_fuente, 0, 10, 20, $color_texto, $tipografia, $codigo{$caracter});
}
//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);
?>
La parte que he añadido...
Código PHP:
imagefttext($im, $tamano_fuente, 0, 10, 20, $color_texto, $tipografia, $codigo{$caracter});
Esto es lo que dice la documentación...
Código:
array imagefttext ( resource $image , float $size , float $angle , int $x , int $y , int $col , string $font_file , string $text [, array $extrainfo ] )
Pues resulta que tal y como lo tengo puesto me genera dos codigos, el de antes que lo genera bien, pero pegado arriba y este nuevo... que lo genera en el sitio que le digo (10, 20) pero no genera bien el codigo!!!
Entonces ya no se como eliminar el primer codigo, y poner el segundo bien... como toca.
Una ayuda por favor...