Ver Mensaje Individual
  #23 (permalink)  
Antiguo 10/05/2011, 13:48
Avatar de stramin
stramin
 
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 1 mes
Puntos: 336
Respuesta: Justificacion con silabeo

y aquí el código para calcular la cantidad de letras necesarias para no salirse de un espacio de 400px, lo hice con verdana y necesita tener el archivo verdana.ttf para funcionar:

Código PHP:
Ver original
  1. <font face="Verdana">
  2. <?php
  3. function box($cadena){
  4.     $box=imagettfbbox("11",0,"verdana.ttf",$cadena);
  5.     return $box[2]-$box[0];
  6. }
  7. $texto="Todos los MMORPG siguen el modelo cliente-servidor. Los jugadores, que usan el programa cliente, son representados en el mundo del juego a través de un avatar una representación gráfica del personaje con el que juegan-. Los proveedores (normalmente los creadores del juego), guardan el mundo persistente en el que habitan estos jugadores. Esta interacción entre un mundo virtual, siempre disponible para jugar, y un oscilante flujo mundial de jugadores es lo que caracteriza a los juegos de rol multijugador masivos en línea. Una vez que un jugador entra en el mundo virtual, puede participar en una amplia variedad de actividades con otros jugadores a lo largo de todo ese mundo. Los desarrolladores de MMORPG se encargan de supervisar el mundo virtual y ofrecer a los usuarios un conjunto de actividades y mejoras constantemente actualizado, para garantizar el interés de sus clientes.";
  8. while(strlen($texto)>0){
  9.     $segmento=$texto;
  10.     if(strlen($segmento)>100) $len=100; else $len=strlen($segmento);
  11.     for($f=$len;box(substr($segmento,0,$f))>400;$f--){
  12.        
  13.     }
  14.     echo "letras: ".$f." (".box(substr($segmento,0,$f))."px)<br>";
  15.     echo substr($segmento,0,$f)."<br>";
  16.     $texto=substr($segmento,$f);
  17. }
  18. ?>
  19. </font>

el texto de prueba esta muy largo y salen unos errores extraños que dicen "something happen" XD, con error_reporting(0), no se ven, supongo que son errores de la función que es algo nueva...

la salida es esta:

Cita:

letras: 51 (399px)
Todos los MMORPG siguen el modelo cliente-servidor.
letras: 53 (400px)
Los jugadores, que usan el programa cliente, son rep
letras: 52 (396px)
resentados en el mundo del juego a través de un avat
letras: 53 (394px)
ar una representación gráfica del personaje con el qu
letras: 50 (395px)
e juegan-. Los proveedores (normalmente los creado
letras: 53 (399px)
res del juego), guardan el mundo persistente en el qu
letras: 53 (393px)
e habitan estos jugadores. Esta interacción entre un
letras: 53 (397px)
mundo virtual, siempre disponible para jugar, y un os
letras: 55 (398px)
cilante flujo mundial de jugadores es lo que caracteriz
letras: 54 (396px)
a a los juegos de rol multijugador masivos en línea. U
letras: 52 (394px)
na vez que un jugador entra en el mundo virtual, pue
letras: 53 (395px)
de participar en una amplia variedad de actividades c
letras: 52 (396px)
on otros jugadores a lo largo de todo ese mundo. Los
letras: 49 (395px)
desarrolladores de MMORPG se encargan de supervi
letras: 54 (396px)
sar el mundo virtual y ofrecer a los usuarios un conju
letras: 52 (400px)
nto de actividades y mejoras constantemente actualiz
letras: 54 (393px)
ado, para garantizar el interés de sus clientes.
como verán las lineas se cortan al llegar a 400px.
__________________
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