Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Gráficos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 30-10-2004
mtpedro mtpedro is offline
No confirmado
 
Registrado: may 2004
Ubicación: Tijuana,b.c, Mexico
Posts: 19
Poder: 0
mtpedro Va por buen camino
Thumbs up DBimage, Salvar imagen en Archivo Externo

Tengo un Dbimage, con un popupmenu hay una opcion para grabar la imagen
a un archivo externo, la idea es que al dar click derecho y seleccionando
la opcion grabar fotografia, se Active un Dialogo para grabar
Solo que Me marca error el siguiente codigo, como puedo hacer esta tarea
mi procedimiento es el siguiente:


Tprocedure TFCONSULTAR.GrabarFotografiaExternamen1Click(Sender: TObject);
VAR
NARCHIVO:STRING;
begin

SAVEpicture1.Execute;
image1.Picture.Bitmap.SaveToFile(SAVEpicture1.FileName);
end;


--------------------------------
Te agradecere tu ayuda Pequeño Saltamontes.
SAludos desde TIJUANA, MEXICO.
Responder Con Cita
  #2  
Antiguo 30-10-2004
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Prueba de esta manera
Código Delphi [-]
 procedure TForm1.Guardarimagen1Click(Sender: TObject);
 begin
 SavePictureDialog1.Execute;
 Dbimage1.Picture.Bitmap.SaveToFile(SavePictureDialog1.FileName);
 end;

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #3  
Antiguo 30-10-2004
mtpedro mtpedro is offline
No confirmado
 
Registrado: may 2004
Ubicación: Tijuana,b.c, Mexico
Posts: 19
Poder: 0
mtpedro Va por buen camino
RESPUESTA, lo graba en blanco o en cero

Ya intente con tu Propuesta, pero ahora me lo graba en cero
es dedir que el archivo lo genera en tamaño 0 bytes
y dice vista previa no disponible, acaso necesitare mas codigo
para grabar o generar este archivo de imagen ?


Espero tu Respuesta pequeño saltamontes.
y muchas gracias por tu ayuda.

saludos desde TIJUANA,B.C. , MEXICO
Responder Con Cita
  #4  
Antiguo 30-10-2004
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Para que te lo reconozca le pones una extensión por defecto, por ejemplo Bmp como en este otro ejemplo.
Código Delphi [-]
 procedure TForm1.Guardarimagen1Click(Sender: TObject);
 begin
 SavePictureDialog1.DefaultExt := GraphicExtension(TBitmap);
 SavePictureDialog1.Execute;
 Dbimage1.Picture.Bitmap.SaveToFile(SavePictureDialog1.FileName);
 end;

Lo he probado y funciona perfectamente.

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #5  
Antiguo 31-10-2004
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 28
Lepe Va por buen camino
Solo comentar que si pulsas el boton guardaImagen y despues le das a cancelar, tambien va a guardar la imagen, y con el nombre que tuviese anteriormente o bien sin nombre.

Código Delphi [-]
SavePictureDialog1.DefaultExt := GraphicExtension(TBitmap);
if SavePictureDialog1.Execute then
 Dbimage1.Picture.Bitmap.SaveToFile(SavePictureDialog1.FileName);

Offtopic: Nunca habia imaginado que se pudiese complicar tanto para poner la extensión bmp a un archivo . Sé que es lo correcto, pero no lo conocía y me ha sorprendido. Gracias Marcos

Saludos.
Responder Con Cita
  #6  
Antiguo 31-10-2004
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Tiene razón Lepe yo no había previsto que se pulsara Escape, incluso debiera añadirse un Try....Except para prever también el fallo en la grabación.

Este es un ejemplo de que los hilos deben de coserse con más de una aguja, para no dejar tomates, si me permite utilizar el lenguaje de las costureras.

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #7  
Antiguo 01-11-2004
mtpedro mtpedro is offline
No confirmado
 
Registrado: may 2004
Ubicación: Tijuana,b.c, Mexico
Posts: 19
Poder: 0
mtpedro Va por buen camino
Thumbs up Ya encontre solucion a esto, por que no funciono lo anterior

Ninguna de lo anterior me funciono, aunque en teoria deberia funcionar,
pero en fin, Estuve buscando informacion sobre manejo de graficos en
manuales Delphi y solucione esto con el siguiente codigo, espero
sea de utilidad quien en el futuro necesite algo parecido.

Gracias pequeños saltamontes !!!!!!!!


Código Delphi [-]
 procedure TFCONSULTAR.GrabarFotografiaExternamen1Click(Sender: TObject);
 VAR
   Marchivo: tbitmap;
   jpg:tjpegimage;
   stream:tmemorystream;
 begin
   jpg:=nil;
   stream:=nil;
   JPG:=tjpegimage.create;
   STREAM:=TMEMORYSTREAM.Create;
   image1.Picture.Graphic.SaveToStream(stream);
   STREAM.Position:=0;
   jpg.LoadFromStream(stream);
 
   SAVEPICTUREDIALOG1.Execute;
   JPG.SaveToFile(SAVEPICTUREDIALOG1.FileName+'.JPG');
 
 end;

ATT. PEDRO MORENO T.
Saludos desde TIJUANA, MEXICO.

Última edición por marcoszorrilla fecha: 01-11-2004 a las 18:33:06. Razón: Poner la etiqueta Delphi
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 06:57:01.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi