FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
cual es la mejor forma de trabajar con blob
Hola amigos,
Ya estoy leyendo y guardando imagenes jpg en archivos blob de un bd, pero estoy limitado a los jpg. Cargo el archivo jpg en un stream y al reves e incluso los imprimo con fortesreport. La única pega que tiene es que cuando la imagen ocupa toda una hoja, en el fortesreport preview, se dificulta hacer zoom o subir y bajar el scroll. Las imagenes ocupan sobre 300kb. No se podria hacer lo mismo con imagenes png o bien con pdf (que seria lo idoneo)? Ya estuve buscando lo mismo que use para el jpg pero en png pero no lo encuentro. como lo trabajais vosotros? saludos y gracias |
#2
|
||||
|
||||
En un campo blob puedes guardar lo que quieras, ¿qué problema tienes?
|
#3
|
||||
|
||||
Si, gracias. Mas que nada el poder abrir un pdf en lazarus y luego pasarlo a un blob tal y como lo hago con jpg.
O bien un un png, el problema es trabajar con formatos, verlos en pantalla por ejemplo y luego guardarloCon jpg no tengo problema, se me dificultan los otros formatos. Lease png o pdf. Cita:
saludos y gracias Última edición por anubis fecha: 10-09-2012 a las 00:21:08. |
#4
|
||||
|
||||
Lo que quieres es verlo "dentro" de tu programa o abrirlo con el programa predeterminado del sistema, ejemplo, si es un html que se abra el firefox, si es un gif que se abra el visor de imágenes, etc.
¿Eso es lo que quieres? |
#5
|
||||
|
||||
con el jpg lo veo dentro de un timage,
un pdf o un png como lo puedo guardar en un blob desde dentro de mi programa?. |
#6
|
||||
|
||||
¿Guardarlo?, tienes varias formas, pero simplificando mucho:
Haz una búsqueda por clubdelphi, encontrarás código para hacerlo, es un tema muy repetido. Es más, creo recordar que tú mismo preguntaste esto hace unos meses. Me parece que con sqlite. |
#7
|
||||
|
||||
si, es cierto, pregunte, pero me faltaban esos detalles.
buscare en el foro, pero lo que me interesaba no es guardar sino poder abrir en mi aplicacion eso que se guarda, de ahi que use los jpg. gracias |
#8
|
||||
|
||||
Hola anubis.
No utilizo Lazarus pero ví que en varios sitios citaban a la librería [MuPDF], tal vez te sirva para lo que estas buscando. Podes descargarlo de [aquí] (GNU Public License). Saludos.
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
#9
|
||||
|
||||
Casimiro,
Ya resolvi una parte, la cuestion era que me empeñaba en usar el tjpegimage, cuando podia hacerlo como: Asi me sirve para cualquier imagen soportada por timage. lo unico que como png me ocupa 10 veces mas la imagen que con el jpg. Como no voy a manipular imiagenes solo guardarlas en un blob y verlas. Ahora me falta buscarle la forma con el pdf. ecfisa, ya vi el componente pero no me sirve. Lo que nose es si existe alguna forma de cargar el pdf de forma externa y pasarle el dato al stream para guardarlo? |
#10
|
||||
|
||||
Cita:
O sea, que lo abro "externamente" a mi programa. |
#11
|
||||
|
||||
Gracias casimiro,
Ya estuve viendo el winexec, pero hace referencia a un archivo, lo que no entiendo como puedo, por ejemplo, es hacer una llamada para cargar una imagen en pdf (que lo abre con el acrobat p.e.) y de ahi pasarlo a un stream para guardarlo en un blob. Porque me imagino que el proceso inverso, leer de un blob y pasarlo para visualizarlo con el acrobat. Componentes para lazarus de pdf no he visto salvo powerpdf, pero solo para crear y en mi caso no he logrado que funcione bien. gracias de nuevo. |
#12
|
||||
|
||||
Tú sólo has de decirle al sistema que lo abra, él sabrá con qué abrirlo.
Normalmente con ShellExecute, si mal no recuerdo. Haz una búsqueda por esa palabra en los foros, encontrarás código de ejemplo. |
#13
|
||||
|
||||
TProcess para que sea multiplataforma con Lazarus.
__________________
mas confundido que Garavito el día del Niño. |
#14
|
||||
|
||||
¿La función como se llama así?
|
#15
|
||||
|
||||
no, TProcess es una clase que permite ejecutar cualquier programa externo.
http://www.freepascal.org/docs-html/.../tprocess.html
__________________
mas confundido que Garavito el día del Niño. |
#16
|
||||
|
||||
Pero ShellExecute sirve también para abrir el programa asociado al archivo que se le pasa. ¿TProcess también?
// Saludos |
#17
|
||||
|
||||
El ShellExecute sólo sirve para Windows, TProcess funciona con Win2, Linux y MacOS, pero depende mas de lo que quieras abrir y el como lo quieres abrir, es decir, puedes ejecutar excel y pasarle como parámetro la ruta del archivo con TProcess y funciona, ahora, si no sabes que ruta o que programa abre que, se puede usar la función OpenDocument, sólo debes poner en uses LCLIntf y LCLProc, y abrirá el documento con el programa asignado en el S.O.
__________________
mas confundido que Garavito el día del Niño. |
#18
|
||||
|
||||
Cita:
// Saludos |
#19
|
||||
|
||||
Si son archivos muy grandes (y muchos) cuidadín con guardarlos en la base de datos. No sólo por el tamaño que alcanzará el archivo, sino porque si se daña la base de datos existe la posibilidad de que no se pueda recuperar la información. Cuesta un poco más (algunas líneas de código adicionales) pero en lo particular a los archivos de ese tipo (imágenes, video, audio) prefiero almacenarlos fuera de la base de datos, y colocando un campo donde almaceno la ubicación del archivo externo.
A lo mejor es que soy medio paranoico con la "pérdida de datos". Como decía un profesor: -"¿ Podés usar una consulta SQL que te de como resultado las morochas o las rubias en el campo de imágenes de la base de datos ?". -"!!! No !!!"...-"¿ Entonces para qué almacenas imágenes en una base de datos ?".
__________________
Lazarus Codetyphon : Desarrollo de aplicaciones Object Pascal, libre y multiplataforma. Última edición por rretamar fecha: 11-09-2012 a las 23:32:14. |
#20
|
||||
|
||||
Cita:
No sé qué BD está usando, pero en los últimos 2012-1998=14 años nunca he tenido ningún problema de ese tipo con firebird y con BDs de muchos gigas. |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Cual es la mejor forma de conectar con la BD | GerTorresM | Conexión con bases de datos | 1 | 11-01-2010 16:51:47 |
Sobre cuál es la mejor opción para trabajar con Word | Gabo | Servers | 6 | 16-01-2008 13:36:21 |
Eliminar Codigo Cual es la mejor Forma ? | sierraja | Varios | 1 | 12-04-2007 00:41:00 |
cual es la mejor forma de logearse a mysql... | Arturo | MySQL | 1 | 11-10-2006 17:45:01 |
cual es la mejor forma ? | martita | Varios | 14 | 07-07-2005 19:35:55 |
|