FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
visualizacion de BMP
Hola a todos.
bueno el tema es el siguiente. como puedo hacer para escalar una imagen en BMP y que me salga en el tamaño que yo necesito sin preocuparme de que quien escanee las las cosas tenga que estar pendiente del tamaño. para los jpg tengo una rutina que me lo hace pero para los bmp no se como hacerlo. Muchas gracias de antemano. |
#2
|
|||
|
|||
Bueno igual que a mi me a echo falta supongo que alguno mas lo puede necesitar por lo cual pongo lo que he echo espero que sea util
Código:
procedure CargaBmp( Fichero: string; const QueImage: TImage); var ElBmp : TBitmap; Rectangulo : TRect; EscalaX, EscalaY, Escala : Single; begin ElBmp:=TBitmap.Create; try ElBmp.LoadFromFile( Fichero ); EscalaX := 1.0; EscalaY := 1.0; if QueImage.Width < ElBmp.Width then EscalaX := QueImage.Width / ElBmp.Width; if QueImage.Height < ElBmp.Height then EscalaY := QueImage.Height / ElBmp.Height; if EscalaY < EscalaX then Escala:=EscalaY else Escala:=EscalaX; with Rectangulo do begin Right:=Trunc(ElBmp.Width * Escala); Bottom:=Trunc(ElBmp.Height * Escala); Left:=0; Top:=0; end; with QueImage.Picture.Bitmap do begin Width := Rectangulo.Right; Height := Rectangulo.Bottom; Canvas.StretchDraw( Rectangulo,ElBmp ); End; finally ElBmp.Free; end; |
|
|
|