Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 20-01-2010
rufo rufo is offline
Miembro
 
Registrado: jul 2006
Posts: 240
Poder: 21
rufo Va por buen camino
Ok

Para buscar la imagen pongo este codigo
Código:
procedure TBuscar_foto.Button1Click(Sender: TObject);
begin
 if openpicturedialog1.Execute then
   begin
     image1.Picture.LoadFromFile(openpicturedialog1.filename);
     edit1.Text:=openpicturedialog1.filename;
   end;
end;
Y para mandar a imprimir la foto es este codigo
Código:
procedure TBuscar_foto.Button2Click(Sender: TObject);
begin
 with Fr_foto do
  begin
   qrimage1.Picture.LoadFromFile(openpicturedialog1.FileName);
   quickrep1.preview;
  end;
end;
Y pongo tu codigo que me diste

Código:
implementation
  uses QRPrntr;
{$R *.DFM}
function Flatten(AGraphic: TGraphic; ABackColor: TColor = clWhite): TBitmap;
begin
  Result := TBitmap.Create;
  with Result do
  begin
    Width := AGraphic.Width;
    Height := AGraphic.Height;
    Canvas.Brush.Color := ABackColor;
    Canvas.FillRect(Rect(0, 0, Width, Height));

    Canvas.Draw(0, 0, AGraphic);
  end;
procedure TFR_foto.DetailBand1BeforePrint(Sender: TQRCustomBand;
  var PrintBand: Boolean);
var
  P: TPicture;
begin
  if FileExists(ChangeFileExt(Application.ExeName, '.bmp')) then
    qrimage1.Picture.LoadFromFile(ChangeFileExt(Application.ExeName, '.bmp'))

  else if FileExists(ChangeFileExt(Application.ExeName, '.png')) then
  begin
    P := TPicture.Create;
    try
      P.LoadFromFile(ChangeFileExt(Application.ExeName, '.png'));
      qrimage1.Picture.Assign(Flatten(P.Graphic));
    finally
      P.Free;
    end;
  end;

end;

end;
end.
Entonces es asi como lo estoy programando ahorita.
Responder Con Cita
  #2  
Antiguo 20-01-2010
Avatar de delphi.com.ar
delphi.com.ar delphi.com.ar is offline
Federico Firenze
 
Registrado: may 2003
Ubicación: Buenos Aires, Argentina *
Posts: 5.964
Poder: 29
delphi.com.ar Va camino a la fama
Pero pegaste mi código tal cual!... tenías que adaptarlo a tu necesidad!.. fíjate que mi código lo que hace es intentar cargar un archivo bmp o png que se llame igual que el ejecutable.

Por lo que entiendo tu necesitas hacer algo como:
Código Delphi [-]
procedure TBuscar_foto.Button2Click(Sender: TObject);
var
  P: TPicture;
  B: TBitmap;
begin
 with Fr_foto do
 begin
    P := TPicture.Create;
    try
      P.LoadFromFile(openpicturedialog1.FileName);
      B := Flatten(P.Graphic);
      try
        qrimage1.Picture.Assign(B);
      finally
         B.free;
      end;
      quickrep1.preview;
    finally
      P.Free;
    end;
  end;
end;

No utilizando los eventos BeforePrint en este caso.

Saludos!
__________________
delphi.com.ar

Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla.

Última edición por delphi.com.ar fecha: 20-01-2010 a las 21:19:50. Razón: Agregué la liberación del TBitmap
Responder Con Cita
  #3  
Antiguo 20-01-2010
rufo rufo is offline
Miembro
 
Registrado: jul 2006
Posts: 240
Poder: 21
rufo Va por buen camino
Sorry tienes razon pero ya lo puse y tal como ahorita me acabas de decir y resulta que ahora el PNG sale con fondo blanco, hijole esta muy estresante esto de Imagenes PNG, no hay un componente que se complemente en QReport.
Responder Con Cita
  #4  
Antiguo 20-01-2010
Avatar de delphi.com.ar
delphi.com.ar delphi.com.ar is offline
Federico Firenze
 
Registrado: may 2003
Ubicación: Buenos Aires, Argentina *
Posts: 5.964
Poder: 29
delphi.com.ar Va camino a la fama
Cita:
Empezado por rufo Ver Mensaje
Sorry tienes razon pero ya lo puse y tal como ahorita me acabas de decir y resulta que ahora el PNG sale con fondo blanco, hijole esta muy estresante esto de Imagenes PNG, no hay un componente que se complemente en QReport.
Fíjate que en la función Flatten el segundo parámetro indica con que color deseas llenar el fondo, y si lo quisieras llenarlo con otra imagen, tendrías que copiar una sobre otra!

Saludos!
__________________
delphi.com.ar

Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla.
Responder Con Cita
  #5  
Antiguo 20-01-2010
rufo rufo is offline
Miembro
 
Registrado: jul 2006
Posts: 240
Poder: 21
rufo Va por buen camino
Disculpa mi torpeza pero me puedes decir como lo hago, ya que es una imagen que tengo de fondo y despues sigue la foto.

la parte que mencionas que debo cambiar seria esta

Código:
function Flatten(AGraphic: TGraphic; ABackColor: TColor = clyellow): TBitmap;
o estoy perdido
Responder Con Cita
  #6  
Antiguo 20-01-2010
Avatar de delphi.com.ar
delphi.com.ar delphi.com.ar is offline
Federico Firenze
 
Registrado: may 2003
Ubicación: Buenos Aires, Argentina *
Posts: 5.964
Poder: 29
delphi.com.ar Va camino a la fama
No me refería al valor por defecto, sino que al llamar la función la llames:
Código Delphi [-]
qrimage1.Picture.Assign(Flatten(P.Graphic, clYellow));


Por otro lado, si quieres tener una imagen de fondo, podría ser algo así
Código Delphi [-]
procedure TBuscar_foto.Button2Click(Sender: TObject);
var
  imgBack: TBitmap;
  imgLogo: TPNGObject;
begin
  with Fr_foto do
  begin
    imgBack := TBitmap.Create;
    try
      { Podes cargarlos de un archivo, de recursos, copiarlo de algo previamente cargado }
      imgBack.LoadFromFile('....fondo.bmp');

      imgLogo := TPNGObject.Create;
      try
        imgLogo.LoadFromFile(openpicturedialog1.FileName);
        { en la posición que desees ponerlo }
        imgBack.Canvas.Draw(10, 10, imgLogo);

        qrimage1.Picture.Assign(imgBack);
        quickrep1.preview;
      finally
        imgLogo.Free;
      end;
    finally
      imgBack.Free;
    end;
   end;
end;
__________________
delphi.com.ar

Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla.
Responder Con Cita
  #7  
Antiguo 20-01-2010
rufo rufo is offline
Miembro
 
Registrado: jul 2006
Posts: 240
Poder: 21
rufo Va por buen camino
Ok mira ya puse el codigo que me diste pero me marca error TPNGObject dice que no lo identifica a que se debera este error
o que estoy haciendo mal
.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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

Temas Similares
Tema Autor Foro Respuestas Último mensaje
necesito componente cmm07 Varios 10 22-01-2009 02:29:48
Necesito imagenes bmp e ico ... Gbyte Gráficos 1 03-06-2008 22:15:05
necesito un componente Renees Varios 2 10-10-2007 10:53:49
Necesito hacer mascaras de imagenes en Delphi!! fies_t_ro Gráficos 2 23-05-2006 20:31:41
Necesito componente iotegi Varios 2 04-12-2004 15:20:22


La franja horaria es GMT +2. Ahora son las 14:45:28.


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