Foro de elhacker.net

Programación => PHP => Mensaje iniciado por: Diabliyo en 7 Enero 2014, 15:54 pm



Título: Texto en Imagen sin salirse del espacio !
Publicado por: Diabliyo en 7 Enero 2014, 15:54 pm
Buen día.

Estoy escribiendo texto en imágenes JPG y me estoy topando con un problema que no encuentro solución creativa.

Existen ocasiones que el texto es demasiado que se salen del ancho de la imagen y la única solución es hacer saltos de linea, pero esto equivale que el usuario haga "prueba y error". Me gustaría automatizar el proceso y que  mi programa pueda hacer que el texto aparezca dentro de la imagen sin salirse del espacio.

La única solución que encontré "de momento" es simplemente hacer un wordwrap($texto, "\n", 100) en donde se indica que por cada 100 (cien) caracteres se colocara un salto de linea.

Hasta aquí wordwrap() funciona bien el 80% de las ocasiones, porque hay veces que el texto lleva ciertos caracteres que no ocupan mucho espacio, como los caracteres: i, j, l, t... y el texto ya no se ve bien, los cortes pueden dejar mucho espacio al borde o bien pasarse del borde.

Saludos !


Título: Re: Texto en Imagen sin salirse del espacio !
Publicado por: #!drvy en 7 Enero 2014, 16:05 pm
Es posible que quieras utilizar una fuente monospace o fixed-width en la que básicamente todos los caracteres tienen el mismo ancho. Así te evitas que corte demasiado pronto.

Respecto a que corta demasiado tarde, wordrap tiene el parámetro cut que cortara el string si o si.
Código
  1. wordwrap($texto, 100, "\n", true);
string wordwrap ( string $str [, int $width = 75 [, string $break = "\n" [, bool $cut = false ]]] )

Saludos