Ver Mensaje Individual
  #3 (permalink)  
Antiguo 23/06/2011, 08:35
Avatar de stramin
stramin
 
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 8 meses
Puntos: 336
Respuesta: Código para meter texto en imagen

escribir sobre una imagen no debería darte problemas, sigue estos pasos:

1.- Lo primero que debes definir es si quieres mostrar la imagen o necesitas guardarla, si quieres que el usuario la pueda descargar entonces debes guardarla.

2.- no necesitas ninguna libreria o clase especial, simplemente con GD o GD2, ademas también es buena idea que hagas en tu servidor web una carpeta de fuentes que puedes nombrar por ejemplo "fuentes" donde guardes las fuentes que quieras usar (Verdana, Arial, etc)

3.- Para comenzar creas la imágen dependiendo del formato:
Código PHP:
Ver original
  1. imagepng($img,"Lote_$lot.png");
  2. imagejpeg($img,"Lote_$lot.png");
  3. imagegif($img,"Lote_$lot.png");
  4. imagewbmp($img,"Lote_$lot.png");

4.- Creas un color para escribir:
Código PHP:
Ver original
  1. $coltext=imagecolorallocate($img,255,255,255); //Color texto (blanco)

5.- Escribes en la imagen con el color y fuente elegida, dependiendo del tipo de fuente:
Código PHP:
Ver original
  1. imagettftext($img,9,0,20,40,$coltext,"verdana.ttf","Tu texto"); // para fuentes True Type
  2. imagefttext($img,9,0,20,40,$coltext,"verdana.ft","Tu texto"); // para fuentes Free Type

para ambos casos los parametros son los mismos
Código PHP:
Ver original
  1. (imagen,tamaño(int),rotacion,posicion x,posicion y,color, fuente(dir),texto(str));

6.- luego puedes guardarla o mostrarla (o ambos XD), tambien dependiendo del formato
Código PHP:
Ver original
  1. // para guardar
  2. imagepng($img,"mi_imagen.png");
  3. imagejpeg($img,"mi_imagen.png");
  4. imagegif($img,"mi_imagen.png");
  5. imagewbmp($img,"mi_imagen.png");
  6. // o mostrar
  7. imagepng($img);
  8. imagejpeg($img);
  9. imagegif($img);
  10. imagewbmp($img);

Se justificaría el uso de librerías especiales si fuese para hacer efectos complicados, pero si es solo para escribir un simple texto, usa lo básico de PHP :)
__________________
El objetivo de este foro es orientar al usuario como un favor y no como una obligación.

Yo soy de los que dan puntos por aporte :D