PDA

Ver la Versión Completa : Convertir de BMP a JPG y viceversa


Emilio
07-06-2006, 03:16:56
De BMP a JPG


uses JPEG;

procedure TForm1.Button1Click(Sender: TObject);
var
MyJPEG : TJPEGImage;
MyBMP : TBitmap;
begin
MyBMP := TBitmap.Create;
with MyBMP do
try
LoadFromFile('A.BMP');
MyJPEG := TJPEGImage.Create;
with MyJPEG do
begin
Assign(MyBMP);
SaveToFile('A.JPEG');
Free;
end;
finally
Free;
end;
end;


De JPG a BMP


procedure TForm1.Button2Click(Sender: TObject);
var
MyJPEG : TJPEGImage;
MyBMP : TBitmap;
begin
MyJPEG := TJPEGImage.Create;
with MyJPEG do
begin
LoadFromFile('A.JPEG');
MyBMP := TBitmap.Create;
with MyBMP do
begin
Width := MyJPEG.Width;
Height := MyJPEG.Height;
Canvas.Draw(0,0,MyJPEG);
SaveToFile('A.BMP');
Free;
end;
Free;
end;
end;

kapullok_2006
11-06-2007, 11:17:10
Yo tengo le siguiente código:

procedure JPGToBMP(f_jpg,f_bmp: string);
var jp: TJPEGImage;
b: TBitMap;
begin
jp:= TJPEGImage.Create;
b:= TBitMap.Create;

jp.LoadFromFile(f_jpg);
b.Assign(jp);

b.SaveToFile(f_bmp);

jp.Free;
b.Free;
end;

//-------------------------------------------------------
En un botón he puesto lo siguiente:

if (Form1.Memo1.Lines.Strings[i+offset]='*.jpg') then
begin
JPGToBMP(Form1.Memo1.Lines.Strings[i+offset],Form1.Memo1.Lines.Strings[i+offset]);
ImageEfecto1.Picture.LoadFromFile(Form1.Memo1.Lines.Strings[i+offset]);
end

//--El programa no da error,pero por lo visto no hace la
conversion de un string de un memo1 q tiene un jpg a un bmp.
Ya que el componente imageefecto1,realiza efectos para bmp's.Este componente me lo recomendaron en estos foros.
Creo q me lo descargué de www.torry.net.el componente es
ProEffectImage.si deseas mirarlo y no lo encuetras,me dices
tu correo y te envío el componente.
saludos.