FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
||||
|
||||
Podrias leer las cabeceras y detectar el tipo de imagen. En este blog esta explicado e implementado: https://delphihaven.wordpress.com/20...aphic-formats/
|
#2
|
||||
|
||||
Gracias por vuestras respuestas. Me han dado la solución en otro foro.
Código:
//Añadir cabeceras: #include <memory> #include <jpeg.hpp> std::auto_ptr<TMemoryStream> stream(new TMemoryStream); TBlobField* blob = static_cast<TBlobField*>(Query->FieldByName("Imagen")); blob->SaveToStream(stream.get()); stream->Position = 0; DWORD* tipo = static_cast<DWORD*>(stream->Memory); if (tipo && *tipo == 0xE0FFD8FF) { std::auto_ptr<TJPEGImage> jpeg(new TJPEGImage); jpeg->LoadFromStream(stream.get()); Imagen->Picture->Assign(jpeg.get()); } else Imagen->Picture->Assign(blob); |
#3
|
||||
|
||||
Hola.
Si, pero vale aclarar que ese código sólo funciona para los tipos BMP y JPG, no funcionará si desearas usar imágenes de tipo PNG, ICO, GIF, etc. Para que soporte sólo esos dos tipos de imágen también se podría escribir así: Código PHP:
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... Última edición por ecfisa fecha: 24-07-2017 a las 20:04:38. |
#4
|
||||
|
||||
Cita:
Código PHP:
|
#5
|
||||
|
||||
Hola _Leo.
Si, en Builder C++ 6 funciona sin problemas. Una prueba sobre una tabla con imágenes JPG y BMP mezcladas: Código PHP:
Saludos
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... Última edición por ecfisa fecha: 24-07-2017 a las 22:26:28. |
#6
|
||||
|
||||
¿Estás seguro de que los campos blob contienen realmente un archivo .jpg y no un .bmp convertido desde un .jpg pegado en un TDBImage?
Algo debo tener mal, porque lo he probado con ADO+Access, BDE+Paradox e IBX+Firebird, y si no es un BMP da el error que menciona Ángel. Son las mismas tablas donde he probado el resto de ejemplos sin problema. Si no es mucho pedir, si tienes tu ejemplo a mano, ¿podrías añadir estas líneas justo antes del LoadFromStream para ver cada tipo según se cargan en el título de la ventana? (BMP=4D42, JPG=D8FF, PNG=5089, GIF=4947, TIF=4949) Código PHP:
Última edición por _Leo fecha: 24-07-2017 a las 23:17:07. |
#7
|
||||
|
||||
Hola _Leo
Cita:
Saludos
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
#8
|
||||
|
||||
¿Valdría en BCB 6? Si sigo usando BCB 6 es porque con XE3, que es el más moderno que tengo, no consigo aclararme en muchas cosas.
|
#9
|
||||
|
||||
Cita:
En las versiones actuales el cambio que mas dificulta las cosas con respecto al BCB6 es el Unicode que al principio es lo que más despista, pero una vez lo entiendes bien no es un gran problema, aunque si cuesta un poco más cuando trabajas con un proyecto viejo que cuando empiezas uno nuevo directamente con Unicode. Última edición por _Leo fecha: 25-07-2017 a las 15:34:22. |
#10
|
||||
|
||||
Cita:
|
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Extraer una imagen tipo captcha de una web | (MAJ) | Trucos | 4 | 28-04-2020 08:54:59 |
Tipo para una imagen en un cgi-stand alone | velezbunzl | Internet | 0 | 16-07-2010 22:26:41 |
Tipo de imagen | edgwin | Gráficos | 1 | 18-01-2010 09:19:06 |
Tipo dato imagen | Ricardo Alfredo | Gráficos | 0 | 26-08-2005 20:25:16 |
Imagen Tipo Tiff, Ocr, Un Error!! | liz_hilton | Gráficos | 5 | 12-04-2005 18:55:11 |
|