Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 19-10-2006
ingel ingel is offline
Miembro
 
Registrado: jun 2003
Posts: 239
Poder: 21
ingel Va por buen camino
Ajustar el tamaño de la imagen para imprimir

Hola a todos , se que es un tema bastante tratado .. pero no logro dar con la solucion . Estoy usando Delphi5 y QReport. Mi problema es que las imagenes guardadas en la DB (sql) son muy 'grandes' y al imprimirlas me imprime solo una parte .. he tratado de recurrir al Strech pero las 'deforma totalmente' y quedan ilegibles ... (creo que en Delphi 7 este problema ya esta solucionado , pero lamentablemente tengo que seguir con el 5) ... tendria que imprimir en tamaño A4 sea cual sea el tamaño y dimensiones originales de las imagenes (escaneadas)
Saludos y gracias
Responder Con Cita
  #2  
Antiguo 19-10-2006
Avatar de seoane
[seoane] seoane is offline
Miembro Premium
 
Registrado: feb 2004
Ubicación: A Coruña, España
Posts: 3.717
Poder: 24
seoane Va por buen camino
Bueno, no se si te servirá pero aquí te dejo un método para imprimir una imagen ajustándola al tamaño del papel, sin deformarla.

Código Delphi [-]
uses Printers, Jpeg;

procedure Imprimir(Imagen: TGraphic);
var
  R: TRect;
  Ancho, Alto: Integer;
begin
  with Printer, Printer.Canvas do
  begin
    Printer.Orientation := poPortrait;
    BeginDoc;
    try
      Ancho:= ClipRect.Right - ClipRect.Left;
      Alto:= ClipRect.Bottom - ClipRect.Top;
      R:= Rect(0, 0, Ancho, Alto);
      if  (Ancho/Imagen.Width) < (Alto/Imagen.Height) then
        R.Bottom:= Trunc((Ancho*Imagen.Height)/Imagen.Width)
      else
        R.Right:= Trunc((Imagen.Width*Alto)/Imagen.Height);
      StretchDraw(R,Imagen);
      EndDoc;
    except
      Abort;
    end;
  end;
end;

// Ejemplo de uso
var
  Imagen: TJpegImage;
begin
  Imagen:= TJPEGImage.Create;
  try
    Imagen.LoadFromFile('d:\1.jpg');
    Imprimir(Imagen);
  finally
    Imagen.Free;
  end;
end;
Responder Con Cita
  #3  
Antiguo 19-10-2006
ingel ingel is offline
Miembro
 
Registrado: jun 2003
Posts: 239
Poder: 21
ingel Va por buen camino
Gracias Seoane

lo pruebo y te comento
Responder Con Cita
  #4  
Antiguo 07-03-2007
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.021
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Ya hace tiempo que se escribió este hilo, pero hoy me ha hecho falta "urgentemente" justo lo que hace el código que había escrito seoane.
El resultado ha sido perfecto como es costumbre en él
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
Ajustar tamaño Barcode hepdad Impresión 2 05-04-2006 16:29:41
ajustar tamaño de fuente VIRU Varios 5 07-02-2006 19:37:44
imprimir una imagen en tamaño folio rebollo75 Impresión 3 20-04-2005 19:35:42
Imprimir una imagen con un tamaño definido acl_gandalf Impresión 1 15-02-2005 14:51:50
Ajustar tamaño en Fast Report kes Impresión 2 24-10-2003 13:16:02


La franja horaria es GMT +2. Ahora son las 18:00:15.


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