It does work.
unit Unit1;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants,
System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs,
Vcl.Buttons, Vcl.StdCtrls, Vcl.ExtCtrls, Vcl.ExtDlgs,
ieview, imageenview, imageen, ievect;
type
TForm1 = class(TForm)
Panel1: TPanel;
Open1: TButton;
AddLayer1: TButton;
Rotate1: TSpeedButton;
SelectLayers1: TSpeedButton;
Copy1: TButton;
Paste1: TButton;
Clear1: TButton;
OpenPictureDialog1: TOpenPictureDialog;
Zoom1: TSpeedButton;
ImageEnVect1: TImageEnVect;
ImageEnVect2: TImageEnVect;
DeleteLayer1: TButton;
procedure FormCreate(Sender: TObject);
procedure FormDestroy(Sender: TObject);
procedure SelectLayers1Click(Sender: TObject);
procedure Rotate1Click(Sender: TObject);
procedure Zoom1Click(Sender: TObject);
procedure Open1Click(Sender: TObject);
procedure AddLayer1Click(Sender: TObject);
procedure Copy1Click(Sender: TObject);
procedure Paste1Click(Sender: TObject);
procedure Clear1Click(Sender: TObject);
procedure DeleteLayer1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
uses imageenio, imageenproc, hyiedefs, hyieutils, iexHelperFunctions;
{$R *.dfm}
procedure TForm1.AddLayer1Click(Sender: TObject);
var
iLayer: integer;
iWidth: integer;
iHeight: integer;
begin
iLayer := ImageEnVect1.LayersAdd;
iWidth := ImageEnVect1.IEBitmap.Width;
iHeight := ImageEnVect1.IEBitmap.Height;
{ Render a transparent layer }
ImageEnVect1.Layers[ilayer].Bitmap.IEInitialize(iWidth, iHeight, clBlack, True);
ImageEnVect1.Update;
ImageEnVect1.Gestures.Pan.Enabled := False;
ImageEnVect1.Gestures.Zoom.Enabled := False;
ImageEnVect1.Gestures.LayerRotate.Enabled := False;
ImageEnVect1.Gestures.LayerMove.Enabled := False;
ImageEnVect1.MouseInteract := [miMoveLayers, miResizeLayers];
SelectLayers1.Down := True;
end;
procedure TForm1.Clear1Click(Sender: TObject);
begin
ImageEnVect1.Clear;
ImageEnVect1.LayersClear;
ImageEnVect2.Clear;
ImageEnVect2.LayersClear;
end;
procedure TForm1.Copy1Click(Sender: TObject);
begin
ImageEnVect1.LayersFixRotations(ImageEnVect1.LayersCurrent);
ImageEnVect1.LayersFixSizes(ImageEnVect1.LayersCurrent);
ImageEnVect1.LayersFixBorders(ImageEnVect1.LayersCurrent);
ImageEnVect1.Proc.SelCopyToClip();
end;
procedure TForm1.DeleteLayer1Click(Sender: TObject);
begin
ImageEnVect1.LayersRemove(ImageEnVect1.LayersCurrent);
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
IERegisterFormats;
OpenPictureDialog1.Filter := GraphicFilter(TGraphic);
end;
procedure TForm1.FormDestroy(Sender: TObject);
begin
IEUnregisterFormats;
end;
procedure TForm1.Open1Click(Sender: TObject);
begin
if OpenPictureDialog1.Execute then
begin
ImageEnVect1.IO.LoadFromFile(OpenPictureDialog1.FileName);
end;
end;
procedure TForm1.Paste1Click(Sender: TObject);
var
iLayer: integer;
begin
ImageEnVect2.Clear;
ImageEnVect2.LayersClear;
ImageEnVect2.Proc.SelPasteFromClip(True, True);
iLayer := ImageEnVect1.LayersAdd;
ImageEnVect1.Layers[ImageEnVect1.LayersCurrent].PosX := 100;
ImageEnVect1.Layers[ImageEnVect1.LayersCurrent].PosY := 100;
ImageEnVect1.Proc.SelPasteFromClip(True, True);
end;
procedure TForm1.Rotate1Click(Sender: TObject);
begin
ImageEnVect1.Gestures.Pan.Enabled := False;
ImageEnVect1.Gestures.Zoom.Enabled := False;
ImageEnVect1.Gestures.LayerRotate.Enabled := True;
ImageEnVect1.Gestures.LayerMove.Enabled := False;
ImageEnVect1.MouseInteract := [miRotateLayers];
end;
procedure TForm1.SelectLayers1Click(Sender: TObject);
begin
ImageEnVect1.Gestures.Pan.Enabled := False;
ImageEnVect1.Gestures.Zoom.Enabled := False;
ImageEnVect1.Gestures.LayerRotate.Enabled := False;
ImageEnVect1.Gestures.LayerMove.Enabled := True;
ImageEnVect1.MouseInteract := [miMoveLayers, miResizeLayers];
end;
procedure TForm1.Zoom1Click(Sender: TObject);
begin
ImageEnVect1.Gestures.Pan.Enabled := True;
ImageEnVect1.Gestures.Zoom.Enabled := True;
ImageEnVect1.Gestures.LayerRotate.Enabled := False;
ImageEnVect1.Gestures.LayerMove.Enabled := False;
ImageEnVect1.MouseInteract := [miScroll, miZoom];
end;
end.

Bill Miller
Adirondack Software & Graphics
Email: w2m@hughes.net
EBook: http://www.imageen.com/ebook/
Custom Commercial ImageEn Development