Zmiana rozdzielczości obrazu

0

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.

0

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.

1 użytkowników online, w tym zalogowanych: 0, gości: 1