Ordenar letras en un Canvas
Buenos dias a todos,
Alguien sabe como ordenar un conjunto de x cantidad de letras en forma consecutiva dentro de un canvas dadas unas coordenadas x, y ? Gracias |
Hola.
Saludos :) |
Estan en una TImage
El orden deberia ser secuencial, es decir, evitar que una letra se sobreponga sobre otra cuando se ordenen |
Hola.
Cita:
Una vez adquiridos, los puedes mostrar mediante el procedimiento TextOut por ejemplo. Saludos :) |
Si, asi lo hago
Con textout Los caracteres se pueden convertir mediante una fuente de Windows El asunto es que no haya overlapping entre ellos y por eso se deban ordenar secuencialmente |
Hola.
Es que no termino de entender la situación... Si ya obtuviste los caracteres, puedes almacenarlos en un string y mostrarlos con Canvas.TextOut, de ese modo no deberías tener ningún tipo de superposición. Y, si deseas manejar los interespacios entre caracteres de modo mas fino, puedes usar la función API SetTextCharacterExtra. Saludos :) |
Asi lo hago
Pero no veo como hacer para que no ocurra el overlap |
Vamos a ver. Ordenar lo ordenas a medida que las escribes en el canvas, eso no es un problema. La superposición la resuelves conociendo de antemano el tamaño del carácter o caracteres que vas a escribir. Revisa la API GetTextExtentPoint32A o GetTextExtentPoint32W para Unicode.
Saludos. |
Ok, entiendo lo que me planteas
Pero basicamente el overlap va a ocurrir cuando 2 letras tengas las mismas coordenadas (x,y) y ncecesito que cuando esto pase se separen los 2 aunque tengan las mismas coordenadas |
Cita:
Imposible. Si dos puntos tienen las mismas coordenadas, coinciden y, además, son el mismo punto. Si quieres separar los caracteres lo tienes que hacer tu por código. Si conoces su tamaño y donde vas a estar, sólo tienen que calcular donde tienes que moverlos. Saludos. |
La franja horaria es GMT +2. Ahora son las 07:54:19. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi