I have the need to save selected layers as an IEN object to be added to an image at a later date. I also need to display it as a PNG in a TListView. However, the way I'm attempting to do it doesn't work well. It is not trimming the PNG, and loading the IEN file loads it huge. What am I missing or am I way off base? Is creating a new TImageEnView not the way to go? I did that to isolate the selected layers and merge just those layers into both a PNG file and IEN file. Also, when I do load the IEN file to append, it adds an additional empty layer.
var vStream := TBytesStream.Create;
try
ImageEnView1.LayersSaveToStream(vStream, IEN_Native_Uncompressed, True, True, true, False, nil);
vStream.Position := 0;
var vImageEnView := TImageEnView.Create(Self);
try
vImageEnView.IO.LoadFromStream(vStream);
vStream.Position := 0;
vImageEnView.LayersSaveMergedTo(SaveDialog1.FileName);
vImageEnView.IO.Params.IEN_Compression := ioPNG + 10000;
vImageEnView.IO.SaveToFileIEN(ChangeFileExt(SaveDialog1.FileName, '.ien'));
finally
vImageEnView.Free;
end;
finally
vStream.Free;
end;



Eric