Witam!
Mam programik do zmiany rozmiaru bitmap/jpg. Pytanie jest takie: jak zmienić przy okazji rozdzielczośc tego obrazka? To ma coś wspólnego z filtrem<ort> Lanczos?</ort>
Help me, please.
Witam!
Mam programik do zmiany rozmiaru bitmap/jpg. Pytanie jest takie: jak zmienić przy okazji rozdzielczośc tego obrazka? To ma coś wspólnego z filtrem<ort> Lanczos?</ort>
Help me, please.
Jeśli chodzi o zmianę wielkości obrazka to kiedyś na pot<ort>żeby</ort> programu napisałem coś takiego, więc musisz trochę pozmieniać:
procedure TForm1.Konwert(x,y: Integer);
var j: TJPEGImage;
b: TBitmap;
s,s1: String;
i,p,q: Integer;
r: TRect;
begin
r.Left:=0;
r.Right:=x;
r.Top:=0;
r.Bottom:=y;
j:=TJPEGImage.Create;
j.CompressionQuality:=100;
b:=TBitmap.Create;
b.Width:=x;
b.Height:=y;
for i:=0 to ListBox1.Count-1 do
begin
s1:='';
s:=ListBox1.Items.Strings[i];
j.LoadFromFile(s);
b.Canvas.StretchDraw(r,j);
j.Assign(b);
for p:=1 to Length(s) do
if (s[p]<>'.') then s1:=s1+s[p] else break;
j.SaveToFile(s1+'m.jpg');
end;
b.Free;
j.Free;
end;
ale przy zmianie na niską rozdzielczość, na zdjęciu pojawiają się zniekształcenia a obraz jest "zpikselowany".
// Jeśli zmieniasz bmp, to TJPEG nie jest potrzebne.