2012-08-02 11 views
7

He estado rascándome la cabeza con esto todo el día. Necesito crear dinámicamente una imagen que contenga una cadena provista por el cliente. El único problema es que la cuerda debe dibujarse a lo largo de una curva como la imagen siguiente. También me gustaría especificar el ángulo de la curva porque este texto debe mostrarse en una serie de productos, y la curva varía en cada producto.Dibujando una cadena que sigue una ruta usando GDI +

He intentado recorrer la cadena y mostrar cada carácter y dar a cada uno una coordenada específica para que se parezca a una parábola, pero para que sea útil, cada carácter debe rotarse para ajustarse a la curva. ¿Alguien tiene alguna sugerencia de la biblioteca System.Drawing que me puede ser útil?

enter image description here

+7

Este chico tiene una extensa publicación en el blog sobre el tema (y cómo hacerlo en C#): http://www.planetclegg.com/projects/WarpingTextToSplines.html –

+0

Pruebe esto: http://stackoverflow.com/ a/11151457/622391 –

+0

posible duplicado de [¿Cómo crear texto curvo en un mapa de bits?] (http://stackoverflow.com/questions/2803853/how-to-create-curved-text-on-a-bitmap) – Jeremy

Respuesta

0

Después de hacer un poco de investigación, parece que WPF es la mejor ruta a tomar cuando se genera el texto deformado. Algunas búsquedas en google me llevaron al this project. Hay una cantidad mínima de XAML, y todavía está escrito en C#. El crédito va a @lneir en codeproject por proporcionar este notable bit de código. Es escalable, flexible y maravillosamente escrito, y la mejor parte ... sin curvas de bezier.

También mencioné que este texto debe representarse en una imagen creada dinámicamente. Resulta que puedes convertir cualquier control WPF en una imagen. Here's a link I found.

Gracias por las respuestas.

Cuestiones relacionadas