PDA

Ver la Versión Completa : ¿Cómo anclar estructuras a imágenes?


Blaster
11-08-2008, 04:40:38
Hola a todos. Estoy desarrolando una aplicación en la cual muestro un bitmap de 24 bits dentro de un AIImageBox (un componente especial, mescla de TImage con SCrollBox). Pues bien, yo necesito "anclar" a la imagen toda una serie de "estructuras flotantes". O sea, necesito anclar anotaciones que puedan ser: Texto simple, circunsferencias, rectángulos, etc. Algo así como lo que sucede cuando uno trabaja con el Photoshop y le agrega capas con texto, cuadrados, etc.

Yo hasta ahora guardo la imagen como tal dentro de un fichero *.zim, y el aumento de la misma en un *.txt dentro del propio fichero *.sim, el cual no es más que un *.cab pero renombrado. El guardar los datos referentes a estas estructuras dentro de un fichero no debe ser dificil, pero lo que
necesito sabes es el cómo mostrarlas en tiempo de ejecución al usuario. El usuario decidirá anclar texto a la imagen, y cuando le de "guardar" y luego "cerrar la aplicación", la próxima vez que abra el fichero debe encontrar ese texto anclado en la misma posición en donde él lo puso.

En resumen, necesito posicionar encima de la imagen estas anotaciones, tal y como en el Photoshop o Firework u otro programa similar. Y todo esto de forma flotante, a tal punto que el usuario pueda interactuar con estas "estructuras" o anotaciones. Y lo más importantes, sin que se dañe la imagen.

¿Existe algún paquete y/o librería y/o componente que me sirva para tal efecto?

egostar
11-08-2008, 04:55:19
Lee nuestra guía de estilo (http://www.clubdelphi.com/foros/guiaestilo.php) por favor, no debes de postear una misma pregunta en varios foros, busca el que creas corresponda la pregunta y si tienes duda existe el foro de Varios.

Salud OS

Neftali [Germán.Estévez]
11-08-2008, 08:49:15
¿Existe algún paquete y/o librería y/o componente que me sirva para tal efecto?

Que yo sepa no existe nada para eso. Lo único que debes hacer es, al volver a abrir ese fichero crear las mismas estructuras que tenías en las mismas posiciones y con las mismas características.
Para eso has guardado toda esa información en un fichero.

Blaster
11-08-2008, 21:57:59
Que yo sepa no existe nada para eso. Lo único que debes hacer es, al volver a abrir ese fichero crear las mismas estructuras que tenías en las mismas posiciones y con las mismas características.
Para eso has guardado toda esa información en un fichero.

No, lo que yo necesito es saber cómo crearlas, cómo mostrárselas al usuario y cómo anclarlas a la imagen en tiempo de ejecución. Y la información referente a esas anotaciones (estructuras) no se ha guardado, pues ni tan siquiera aun sé cómo crearlas. Lo que precizo es saber cómo hacer para que cuando el usuario pinche, por ejemplo, en el botón que permite anclar un rectángulo a la imagen, pues luego de eso el mismo mueva el mouse hacia dicha imagen y entonces aparezca el cuadrado sobre la imagen. Luego de eso, el usuario podría mover el rectángulo con el mouse, redimensionarlo, eliminarlo, etc.

Es para un simulador de microscopio óptico. El usuario debe ser capaz de realizar anotaciones sobre la muestra (imagen digital incluida dentro del fichero *.sim).

Bye.

seoane
11-08-2008, 22:27:18
Puedes echarle un vistazo a esto:
http://www.clubdelphi.com/foros/showpost.php?p=192688&postcount=2

Aunque Neftali supongo que te recomendara esto otro:
http://www.delphiarea.com/products/simplegraph/

Neftali [Germán.Estévez]
12-08-2008, 11:13:28
Ok, entendí que ya tenías resuelto el tema de crear los elementos y de cómo guardarlos.

Pues Seoane te ha dado la respuesta; Si prefieres algo más personalizado y manejable puedes hacerlo tú partiendo del ejemplo que te recomienda; También te puede ayudar el componente TSelectOnRuntime que puedes encontrar en mi página.

Si quieres algo más elaborado el componente TSimpleGraph (también te lo ha colocado Domingo) está muy bien.