Hi
1. The selection refers to bitmap coordinates, which may not match the screen coordinates if the image has been zoomed or scrolled. You can convert them to screen coordinates with XBmp2Scr/YBmp2Scr
2. You can call ImageEnView1.Fit (or ImageEnView1.ShrinkToFit)
3. How about:
const
Selection_Size = 0.2; // 20% of screen area
begin
ImageEnView1.SelectionBase := iesbClientArea;
ImageEnView1.Select(Trunc((0.5 - Selection_Size / 2) * ImageEnView1.ClientWidth),
Trunc((0.5 - Selection_Size / 2) * ImageEnView1.ClientHeight),
Trunc((0.5 + Selection_Size / 2) * ImageEnView1.ClientWidth),
Trunc((0.5 + Selection_Size / 2) * ImageEnView1.ClientHeight));
Nigel
Xequte Software
www.xequte.com
nigel@xequte.com