23/09/2004

unir duas imagens em apenas uma

seguinte tem um sistema aqui na empresa que eles tiram fotos de toda passagem de carro... e tipo...ou seja... passou um carro tira uma foto e alguns milésimo depois tira uma segunda de confiirmação....

o que eu preciso fazer é o seguinte.... preciso unir as duas imagens.... sei lá se preciso decompor etc e tal... e assim que eu unir essas duas imagens salvar com um outro nome....tipo pego as duas e transformo em uma só unindo ambas....

fico no aguardo


Piaum3

Respostas

23/09/2004

Beppe

function Unir(G1, G2: TGraphic): TBitmap;
begin
  Result := TBitmap.Create;
  with Result do
  try
    Width := G1.Width + G2.Width;
    Height := G1.Width;
    Canvas.Draw(0, 0, G1);
    Canvas.Draw(G1.Width, 0, G2);
  except
    FreeAndNil(Result);
    raise;
  end;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
  P1, P2: TPicture;
  B: TBitmap;
begin
  P1 := TPicture.Create;
  P2 := TPicture.Create;
  try
    P1.LoadFromFile(´Primeira.jpg´);
    P2.LoadFromFile(´Segunda.jpg´);
    B := Unir(P1.Graphic, P2.Graphic);
    with TJPEGImage.Create do
    try
      Assign(B);
      SaveToFile(´Destino.jpg´);
    finally
      Free;
      B.Free;
    end;
  finally
    P1.Free;
    P2.Free;
  end;
end;


Adicione Jpeg na sua uses.


Responder Citar