Guardar gráficos en ADO
Las tablas ADO de Access guardan los gráficos en un campo Blob (Binary Large Object), pero no se guarda solo el área del gráfico. Estos datos forman un objeto OLE con una cabecera añadida a los datos "reales" del gráfico. Como pueden ser formato, tipo de objeto, programa que lo diseñó... etc. Además de otra información del OLE Kernel para trabajar con el gráfico.
Total, que el gráfico se llena de "cortezas" que envuelven el gráfico a modo de piel. Y pelar esa "fruta" parece un poco difícil. Algún gurú nos echará una mano... Yo he intentado algunas opciones, pero de momento sin éxito. Cuando lo consiga te lo diré.
La táctica es guardar el campo en un TADOBlobStream. Luego manipularlo para quitarle la cabecera y guardar el gráfico puro en un TBitmap. Por último se asignaría el BitMap a un TImage. No he probado la vía opuesta. Capturar un gráfico del Clipboard (o de un fichero) y guardarlo en un campo Blob. A lo mejor esta última ruta es más fácil. Lo probaré un día de estos...
|