lazarus-ccr/components/nvidia-widgets/utils/crop.pp

42 lines
828 B
ObjectPascal

program crop;
{$mode objfpc}{$h+}
uses
//readers
FPReadBMP, fpreadjpeg, FPReadPNG, fpreadpnm, fpreadtga, FPReadXPM,
//writers
FPWriteBMP, fpwritejpeg, FPWritePNG, fpwritepnm, fpwritetga, FPWriteXPM,
FPImage, SysUtils;
var
img: TFPMemoryImage;
img2: TFPMemoryImage;
x1, y1, x2, y2: integer;
x: integer;
y: integer;
begin
img := TFPMemoryImage.Create(0, 0);
//img.UsePalette := False;
img.LoadFromFile(ParamStr(1));
x1 := StrToInt(ParamStr(2));
y1 := StrToInt(ParamStr(3));
x2 := StrToInt(ParamStr(4));
y2 := StrToInt(ParamStr(5));
img2 := TFPMemoryImage.Create(x2 - x1, y2 - y1);
//img2.UsePalette := False;
for x := x1 to x2 - 1 do
for y := y1 to y2 - 1 do
img2.Colors[x - x1, y - y1] := img.Colors[x, y];
img2.SaveToFile(ParamStr(6));
img.Free;
img2.Free;
end.