Autor
|
Tema: Convertir texto en imagen con PHP (Leído 3,993 veces)
|
<housedir>
Desconectado
Mensajes: 199
|
hola a todos, quisiera saber como convertir texto en imagen con php, tengo un codigo y funciona bien: <?php if(!isset($_GET['txt'])) { exit(); } header ("Content-type: image/png"); $string = $_GET['txt']; $font = 4; $width = ImageFontWidth($font) * strlen($string); $height = ImageFontHeight($font); $im = @imagecreate ($width,$height); $background_color = imagecolorallocate ($im, 255, 255, 255); //white background $text_color = imagecolorallocate ($im, 0, 0,0);//black text imagestring ($im, $font, 0, 0, $string, $text_color); imagepng ($im); ?>
El problema es que este codigo no hace saltos de linea, quisiera por ejemplo que al enviar un texto tome de limite de ancho 600px y al toparse con ese limite haga un salto de linea y asi en todo el texto
|
|
|
En línea
|
Titulo: Padre nuestro Padre Nuestro que estás en www.cielo.comSantificado sea tu server, venga a nosotros tu shareware Hágase tu downloading así en el http como en el ftp Danos hoy nuestro surfing de cada día, Perdona nuestros bugs como nosotros también perdonamos a Microsoft. No nos dejes caer en una Mac y líbranos de todo worm. Enter...
|
|
|
Ragnarok
|
Las librerías estándar no hacen eso, o encuentras una librería que lo haga o lo calculas a mano (te será más fácil con una fuente de ancho fijo).
|
|
|
En línea
|
|
|
|
miloscorp
Desconectado
Mensajes: 17
|
Hola housedir podrias probar algo asi, lo escribi sobre la marcha y no lo probe asi que seguro habra algo que corregir, despues si tengo tiempo lo pruebo. Cualquier duda me avisas, y con unos pequeños retoques podrias hasta hacer que el texto quede centrado. <?php if(!isset($_GET['txt'])) { exit(); } header ("Content-type: image/png"); $string = $_GET['txt']; $font = 4; $ancho_caracteres = ImageFontWidth($font); $alto_caracteres = ImageFontHeight($font); $width = 600; $cant_caracteres = strlen($string); $cant_caracteres_linea = $width / ancho_caracteres; //Cantidad de caracteres que entran en una linea segun el ancho de la imagen //Ahora que tenemos la cantidad de caracteres que entran a lo ancho podemos calcular la cantidad de lineas $cant_lineas = strlen($string) / $cant_caracteres; //Esto nos devuelve la cantidad de lineas $espacio = 2;//Espacio entre lineas $height = (ImageFontHeight($font) + $espacio) * $cant_lineas; $im = @imagecreate ($width,$height); $background_color = imagecolorallocate ($im, 255, 255, 255); //white background $text_color = imagecolorallocate ($im, 0, 0,0);//black text
$i = 0; $j = 0; $tmp = ""; $y = 0; $x = 0;
Do{ Do{ $tmp .= substr($string,$i,1); $i++; if($j == $cant_caracteres_linea or ($cant_caracteres - $i) < $cant_caracteres_linea) { imagestring ($im, $font, $x += $ancho_caracteres, $y, $string, $text_color); $y += ImageFontHeight($font); $j = 0; $tmp = ""; if (($cant_caracteres - $i) < $cant_caracteres_linea){ break; } }else{ $j++; } }while ($j < $cant_caracteres_linea); }while ($i < $cant_caracteres); imagepng ($im); ?>
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
convertir texto
PHP
|
pepelon
|
1
|
1,840
|
22 Enero 2007, 23:18 pm
por дٳŦ٭
|
|
|
Convertir de numero a texto
PHP
|
cuerty
|
2
|
2,318
|
25 Julio 2008, 18:53 pm
por cuerty
|
|
|
convertir texto en voz
Software
|
juanarlosmaka
|
4
|
4,491
|
20 Mayo 2011, 06:06 am
por SuperDraco
|
|
|
convertir 9c:97:26:d2:2f:a3 a texto
Dudas Generales
|
Alexeit
|
3
|
2,482
|
17 Julio 2015, 20:07 pm
por engel lex
|
|
|
lenguaje para convertir imagen a texto
Programación General
|
cibergeek
|
7
|
4,132
|
2 Julio 2017, 20:04 pm
por Ragnarok
|
|