procedure TForm1.Copy1Click(Sender: TObject);
var
  iRGB: TRGB;
  i: integer;
begin
  if (SelectEllipse1.Down) and (ImageEnView1.Selected) then
  begin
    { Save original image to restore after copy }
    ImageEnView1.Proc.SaveUndo('Copy Ellipse');
    { Invert the selection to set the transparency }
    ImageEnView1.InvertSelection;
    { Fill the selection with black }
    ImageEnView1.Proc.Fill(clBlack);
    { Remove the selection }
    ImageEnView1.DeSelect;
    { Render the trancparency }
    iRGB := TColor2TRGB(clBlack);
    { Set the transparency- make the black transparent }
    ImageEnView1.Proc.SetTransparentColors(iRGB, iRGB, 0);
    ImageEnView1.BackgroundStyle := iebsChessboard;
    ImageEnView1.IO.Params.BitsPerSample := 8;
    ImageEnView1.IO.Params.SamplesPerPixel := 4;
    { Copy to the clipboard }
    ImageEnView1.Proc.CopyToClipboard();
    { Restore the original image }
    for i := 0 to ImageEnView1.Proc.UndoCount-1 do
      ImageEnView1.Proc.UndoAt(i);
    ImageEnView1.Proc.ClearAllUndo;
    ImageEnView1.Update;
    Undo1.Enabled := ImageEnView1.Proc.CanUndo;
  end
  else
  begin
    ImageEnView1.Proc.CopyToClipboard();
  end;
end;
 
procedure TForm1.Paste1Click(Sender: TObject);
begin
  ImageEnView2.Proc.PasteFromClipboard();
  ImageEnView2.Update;
end;
Bill Miller
Adirondack Software & Graphics
Email: w2m@hughes.net
EBook: http://www.imageen.com/ebook/
Custom Commercial ImageEn Development