FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
Alguien me ayuda con los streams?
Saludos,primero que nada agradezco cada día que me ayudan, lo que pasa es que yo que yo adquiero imágenes por medio del escáner, pero no se cómo meterlos a un formato stream por así decir, alguien me pudiera recomendar algún tutorial para conocer mejor los streams en Delphi, porfavor, ó pudiera ser còmo pasar un Tbitmpa a un Tstream
|
#2
|
|||
|
|||
Holas. Mira, ami tambien me tocó hacer algo parecido. Es cuestion de ver exactamente que quieres hacer con un stream.
Aca en el foro con el buscardor puedes encontrar un monton de soluciones. Te dejo lo que hice yo. Capaz que te puede ayudar. Tome la ayuda de Seoane en que se trataba de como guardar una imagen. Aqui el Link. Luego lo cambie por esto:
Y listo. Ya tienes la imagen en un stream. Despues si lo quieres guardar en una base de datos, tal vez quieras ver este link. El maestro Delphi.com.ar respondio muchisimos mensajes sobre stream. Capáz que él te podra dar una mano mas en profundidad. Espero haberte sido de ayuda. No siempre la pego respondiendo mensajitos, pero bue.. son ideas. Muchos saluditos.
__________________
"El ordenador nació para resolver problemas que antes no existían." Bill Gates. |
#3
|
|||
|
|||
Lo copio de nuevo porque nose que paso:
Código Delphi [-] uses jpeg; //procedure Capturar(Filename: string; Panel: TPanel); funcion Capturar(Filename: string; Panel: TPanel): TStream; var SrcWindow: THandle; SrcDC: HDC; Bitmap: TBitmap; Jpg: TJPEGImage; stream : Tstream; begin SrcWindow:= Panel.Handle; if SrcWindow <> 0 then begin SrcDC:= GetDC(SrcWindow); if SrcDC <> 0 then begin Bitmap:= TBitmap.Create; Jpg:= TJPEGImage.Create; stream := TMemoryStream.Create; try Bitmap.Width:= Panel.Width; Bitmap.Height:= Panel.Height; BitBlt(Bitmap.Canvas.Handle,0,0,Bitmap.Width, Bitmap.Height,SrcDC,0,0,SRCCOPY); Jpg.CompressionQuality:= 60; Jpg.Assign(Bitmap); //Jpg.SaveToFile(Filename); Aqui lo comento y en vez de guardarlo a un archivo lo guardo a un stream. Jpg.SaveToStream(stream); finally Bitmap.Free; Jpg.Free; ReleaseDC(SrcWindow,SrcDC); end; end; Result:=stream; end; // Ejemplo de como usar la funcion MiStream:=Capturar('c:\1.jpg',Panel1);
__________________
"El ordenador nació para resolver problemas que antes no existían." Bill Gates. |
#4
|
||||
|
||||
Agradecimiento
Muchas gracias ya estoy analizandolo,en cuanto tenga un resultado te lo notifico, me hes de mucha ayuda me dejastes sin palabras saludos
|
#5
|
||||
|
||||
ya funcionó
Saludos, ya me funcionó muchs gracias,cualquier duda avisenme,aunque hay algo que necesito verificar cuando cambio el tamaño con la VCL Vampyre Imaging Library al usar resizeImage,(Lo hago para realizar los thumbnails <con jvthumbview>) se tarda en cargar las imagenes stream obtenidas del bitmap obtenido por el escáner ,.es normal?, se puede optimizar?... ejej
saludos. |
#6
|
|||
|
|||
Cita:
La verdad que no conozco esa libreria Vampyre (causa gracia el nombre, jejeje).. Si lo que quieres es hacer un redimesionado del tamaño de la imagen, ya se ha tratado muchas veces aqui, y la verdad que ami me funciono muy bien que incluso se adapta muy bien a la solucion anterior. El secreto esta en el TBitmap.Canvas.StretchDraw Mira este hilo y quiza tambien algo mas completo, mira este truco. Suerte en tu proyecto.
__________________
"El ordenador nació para resolver problemas que antes no existían." Bill Gates. |
#7
|
||||
|
||||
Saludos
holas, jejej, pues que bueno, porque nos podemos apoyar en las áreas que no entendamos , voy a intentar este método ojala sea más rapidos.
Sobre la V.I.L. es un vcl enfocado a gráficos y creo es bueno, creo a dec y a mamu les resulto muy bien jojo deja te paso l link para que o cheques tal vez te sea de utilidad dale click aquí oye a lo mejor no es tan rápido porque no use los stream en una bd, pudiera ser? saludos suerte igualmente con tu proyecto |
#8
|
|||
|
|||
Excelente!!, no sabia de la existencia de la VIL.. parece muyy completa en lo que a graficos se refiere!!... Voy a probarla a ver si realmente es tan buena como parece ..
respecto a la lentitud, la verdad que no te sabría decir el porque de la situación. No creo que tenga algo que ver que no uses los streams en la db. Te recomiendo que habras un nuevo hilo en OOP y pegues ahí todo el procedimiento. Seguramente Dec y compañia te van a asesorar en donde podrías mejorar tu código. Muchos saludos.
__________________
"El ordenador nació para resolver problemas que antes no existían." Bill Gates. |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
r que r con cliente/servidor y streams | zastilla | Internet | 1 | 05-10-2006 21:56:40 |
Archivos y Streams | diegofhernando | Varios | 1 | 02-10-2006 15:50:42 |
Problemas con Streams e Imágenes | Elfoscuro | Gráficos | 2 | 09-05-2005 19:42:26 |
Concatenar Streams | johncook | Varios | 6 | 27-11-2004 03:25:43 |
ejemplo streams | zastilla | Internet | 1 | 11-11-2004 11:43:35 |
|