2011-01-10 11 views
15

Estoy buscando un algoritmo para hacer este efecto, pero no ayuda que ni siquiera sé qué buscar. Utilizo PHP, por lo que cualquier muestra de código existente sería genial. Quiero especificar los bordes de la forma y hacer que php lo llene automáticamente con letras. También estoy abierto a otras ideas para lograr lo mismo. ¿Este algoritmo tiene un nombre?¿Cuál es el nombre de un algoritmo que produciría este relleno gráfico

http://robertbasic.com/img/sign-letters.gif

+0

Interesante pregunta. +1 –

+0

Mismo :) +1 interesante –

Respuesta

6

no sé el nombre exacto del algoritmo - Me imagino que es una variante de la 2D bin packing problem, pero sin tener el interés de la mejor paquete posible.

Éstos son algunos de los recursos y preguntas:

  1. ¿Estás tratando de pintar la imagen lo más fuerte posible utilizar diferentes tipos de letra de tamaño? (a diferencia de todos los tamaños de fuente)
  2. ¿Se pueden cortar los caracteres en los bordes?

Si la segunda pregunta es sí, me parece que la forma más fácil de producir la imagen sería llenar todo el rectángulo con caracteres, invertir la forma de la imagen y usarla como máscara.

Aquí hay una respuesta no solo para los caracteres, sino para las oraciones enteras. Algorithm for Text Wrapping Within a Shape

Editar:
Algunos sitios web de llenado gráficas modernas populares que podrían ser la pena estudiar

+0

Eche un vistazo a este bin-pack 2D js + canvas https://github.com/mackstann/binpack, y una explicación en http://www.blackpawn.com/texts/ lightmaps/Creo que esto es mucho más difícil que bin-pack 2D, pero puedes reducir los retículos a cuadrados y comenzar desde allí. –

Cuestiones relacionadas