hola tengo lo siguiente:
Código Delphi
[-]
procedure JPGToBMP(f_jpg,f_bmp: string); forward;
procedure BMPToJPG(f_bmp,f_jpg:string); forward;
procedure CambiarTamanoBMP(f_entrada,f_salida: string; ancho: integer); forward;
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;
procedure BMPToJPG(f_bmp,f_jpg:string);
var b:TBitMap;
jp:TJPEGImage;
begin
b:=TBitMap.Create;
jp:=TJPEGImage.Create;
b.LoadFromFile(f_bmp);
jp.Assign(b);
jp.SaveToFile(f_jpg);
b.Free;
jp.Free;
end;
procedure CambiarTamanoBMP(f_entrada,f_salida: string; ancho: integer);
var b_e,b_s: TBitMap;
r: TRect;
begin
b_e:= TBitMap.Create;
b_s:= TBitMap.Create;
b_e.LoadFromFile(f_entrada);
b_s.PixelFormat:= pf24bit;
b_s.Width:= ancho;
b_s.Height:= (ancho*b_e.Height) div b_e.Width;
r.Left:= 0; r.Right:= b_s.Width;
r.Top:= 0; r.Bottom:= b_s.Height;
b_s.Canvas.StretchDraw(r,b_e);
b_e.Free;
b_s.Free;
end;
procedure TForm2.Blanco_NegroClick(Sender: TObject); begin
Screen.Cursor := crHourGlass;
Form2.ImageZoom1.Visible:=false;
Form2.Image1.Visible:=false;
if Form1.Memo1.Lines.Strings[i+offset] = '*.jpg' then
begin
JPGToBMP('*.jpg','G:\carpeta2\*.bmp');
CambiarTamanoBMP('G:\carpeta2\*.bmp','G:\carpeta3\*.bmp',20);
lista_archivos.Strings[i+offset]:='G:\carpeta3\*.bmp';
end;
Form2.ImageEfecto1.Picture.LoadFromFile(lista_archivos.Strings[i+offset]);
Form2.ImageEfecto1.Effect_GrayScale;
Screen.Cursor := crDefault;
end;
Mi aplicacion me muestra en un Memo, la ruta de las imagenes,pero cuando quiero aplicarle blanco_negro a la foto desaparece ésta del componente imagen como tiene que ser y no aprece cambiada en ImageEfecto1, que es un componente 'ProEffectImage',que me recomendaron en estos foros.
Saludos,perdonad si me quereis explicar algo.