FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Asignar el contenido de un datafield de tipo tbitmap a un objeto gráfico Tpath
Buenas tardes,
Lo que trato de hacer es asignar el contenido de un gráfico, en este caso una firma, que cargo desde un TFDQuery a un objeto Tpath. El paso inverso, es decir pasar del Tpath al Blodfield lo tengo solucionado y funcionando sin problemas. He estado googleando y no consigo encontrar una solución. Muchas gracias. |
#2
|
||||
|
||||
En principio es la inversa de que lo que te han contestado para cargar.
|
#3
|
||||
|
||||
Cita:
Entiendo que tienes una firma en un formato gráfico (JPG, PNG,...) y quieres cargar el contenifdo en un TPath. En tiendo que con TPath te refieres a la clase gráfica de FMX: https://docwiki.embarcadero.com/Libr....Objects.TPath TPath es una forma de representar un gráfico a partir de definir puntos, líneas y curvas. Algo así como un gráfico vectorial. Para que nos entendamos, si defines un TPath (en su propedad Data) con algo como esto: "M1,0 L2,1 L1,2 L0,1 L1,0 Z" Obtendrás en pantalla esto: Por lo tanto convertir "directamente" una imagen almacenada (una firma) a un TPath no es posible.
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#4
|
|||
|
|||
Muchas gracias por tu respuesta, Neftali.
Has entendido perfectamente la pregunta y como sospechaba no es posible. Cita:
|
#5
|
|||
|
|||
Mucha gracias por tu respuesta:
No se trata de pasar un Tpah a un bitmap, si no de lo contrario. Pero te agradezco muchísimo tu interés y la respuesta, que es perfecta para pasar un tpah a un bitmap y guardarlo en un campo de un DataSet. De hecho estuve buscando esta solución durante algunas horas. si en vez de eso hubiera puesto la consulta aquí en el foro, me habría ahorrado mucho tiempo con tu respuesta. Cita:
|
#6
|
||||
|
||||
Cita:
"Por lo tanto convertir "directamente" una imagen almacenada (una firma) a un TPath no es posible" Otra cosa es lo que siempre decimos: "En informática no hay nada imposible, lo que hay que evaluar es cuanto cuesta hacerlo". Entiendo que lo que necesitas sería algo así como utilizar un OCR, que permite reconocer un texto en formato imagen y extraer de ahí un texto como string. En tu caso tienes una imagen, que al ser una firma podemos considerar o convertir en "monocromo" y de ahí extraer un TPath. Al final es como pasar una imagen "normal" a vectorial y eso, aunque no es simple, es posible. Me ha picado la curiosidad y he buscado un poco sobre eso y he llegado a este artículo: http://cardhouse.com/computer/vector.htm Que acaba utilizando este código: http://cardhouse.com/computer/vectcode.htm Por lo que he entendido permite convertir un TBitmap, que almacena en una matriz de 0/1 (que cuadra con lo que podría ser una firma) y lo acaba convirtiendo en una lista de vectores. No debería ser complicado, convertir esos vectores en un TPath. Por si te interesa y quieres seguir investigando...
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#7
|
|||
|
|||
Cita:
Muchas gracias una vez más. Al final opté por una solución algo más simple. Me explico: Se trata de un formulario en FireMokey que sirve para el mantenimiento de una tabla de una base de datos, que entre otros campos almacena la firma del cliente como jpg. 1.- Cuando inserto un registro en la base de datos hago una conversión de Tpath a Bitmap y lo almaceno en un campo tipo Blob. El problema viene al tratar de modificar un registro ya existente, en cuyo caso, tengo que presentar el campo Blob almacenado como firma en el objeto tpath de un form, para que pueda ser alterado y almacenado en la base de datos. Aquí es donde hay que pasar el campo de la base de datos almacenado como jpg a tpath. 2.- Mi solución: Apoyándome en un Timage dentro de un Trectangle, utilizo el Tpath para editar la firma y mediante un botón se almacena en el Timage. Con esto siempre uso este último objeto para intercambiar la información entre la base de datos y el formulario. Si se trata de una modificación, al leer el registro, cargo al campo blob sobre un objeto Timage mostrando así el contenido de la firma. Si el usuario edita el objeto tpath, debe hacer clic para pasar el contenido de éste al Timage, y es este último el que almaceno en el campo de la base de datos. Inserción : Tpath ---> Timage --> Campo BD Modificación : Campo BD --> Timage ; si se edita el Tpath, entonces Tpath --> Timage . Siempre se graba el Timage sobre el campo de la BD. Espero haberme explicado |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Guardar el gráfico de un TPath en un campo Blob de un Dataset | david.camaleon | FireMonkey | 2 | 22-03-2023 11:48:13 |
Grafico en Excel - XlCategory sin poder asignar valores | javicho_villa | Varios | 0 | 26-05-2022 22:17:48 |
Asignar datos origen a gráfico en tiempo de ejecución | g_rojo | Gráficos | 4 | 07-12-2007 02:44:19 |
Repintado de un objeto grafico | senpiterno | Gráficos | 7 | 01-07-2004 20:25:08 |
Asignar en tiempo de diseño un datafield dentro de un informe | melanthea | C++ Builder | 7 | 25-06-2004 19:35:35 |
|