Hola José Luis, te transcribo lo que ha salido en la última entrega del boletín para desarrolladores de latium software, espero que te se útil.________________________________________
Esta es una pregunta recurrente en foros y grupos de noticias. Para
cargar una imagen JPEG podemos usar la unidad "jpeg" que viene con
Delphi (si no la tiene instalada, creo que puede encontrarla en el
directorio "Extras" en el CD ROM de Delphi). Puede encontrar alterna-
tivas en la red, pero voy a usar esta porque viene con Delphi y todos
la tienen.
Para cargar una imagen JPEG en un componente Image tiene que hacer
algo como lo siguiente:
uses jpeg;
procedure TForm1.Button1Click(Sender: TObject);
var
jpg: TJpegImage;
begin
jpg := TJpegImage.Create;
try
jpg.LoadFromFile('d:\path\file.jpg');
Image1.Picture.Assign(jpg); // Carga la imagen como JPEG
finally
jpg.Free;
end;
end;
La imagen es cargada como JPEG, lo que está bien, a menos que queramos
acceder a las propiedades Pixels y ScanLine del Bitmap. Por ejemplo, lo
siguiente no funcionará:
Image1.Canvas.Pixels[0,0] := clWhite; // Pixel sup-izq en blanco
Si pretendemos realizar algún procesamiento de imagen deberemos cargar
la imagen JPEG como un bitmap. Para hacer eso tenemos que usar el método
Assing de un Bitmap, no un Picture, así que sólo tenemos que hacer un
pequeño cambio en el procedimiento que presentáramos arriba:
Image1.Picture.Bitmap.Assign(jpg); // Carga la imagen como BMP