ImageEn, unit iemview

TImageEnMView.MultiSelectedImagesCount

TImageEnMView.MultiSelectedImagesCount


Declaration

property MultiSelectedImagesCount: Integer;


Description

MultiSelectedImagesCount returns the number of selected images. Selected indexes are returned by MultiSelectedImages.

Note: This property is valid even if multiple selection is not enabled (i.e. returning either 0 or 1).


Examples

// Replace all selected images with 'new.jpg'
for i := 0 to ImageEnMView1.MultiSelectedImagesCount - 1 do
begin
  selIdx := ImageEnMView1.MultiSelectedImages[ i ];
  ImageEnMView1.SetImageFromFile( selIdx, 'new.jpg' );
end;


// Rotate selected images right (90° clockwise)
for i := 0 to ImageEnMView1.MultiSelectedImagesCount - 1 do
begin
  selIdx := ImageEnMView1.MultiSelectedImages[ i ];
  bmp := ImageEnMView1.GetTIEBitmap( selIdx );
  bmp.Rotate( 270 );
  ImageEnMView1.ReleaseBitmap( selIdx, True );
end;
ImageEnMView1.Update();


// Get filenames of all selected files
lbxFilenames.Clear();
for i := 0 to ImageEnMView1.MultiSelectedImagesCount - 1 do
begin
  selIdx := ImageEnMView1.MultiSelectedImages[ i ];
  lbxFilenames.Items.Add(ImageEnMView1.ImageFileName[selIdx]);
end;


// Access files in the order that user selects them
ImageEnMView1.MultiSelectionOptions := ImageEnMView1.MultiSelectionOptions + [iemoDontSortMultiSelection];
for i := 0 to ImageEnMView1.MultiSelectedImagesCount - 1 do...


// Deskew all selected scanned documents
ImageEnMView1.LockUpdate();
try
  for i := 0 to ImageEnMView1.MultiSelectedImagesCount - 1 do
  begin
    selIdx := ImageEnMView1.MultiSelectedImages[i];
    ImageEnMView1.SelectImage( selIdx );
    angle := ImageEnMView1.Proc.SkewDetection();
    ImageEnMView1.Proc.RotateAndCrop( angle, ierBilinear, ImageEnMView1.IEBitmap.Height / ImageEnMView1.IEBitmap.Width, iecaSkewedDocument );
  end;
finally
  ImageEnMView1.UnlockUpdate();
end;


// Deskew all selected scanned documents (alternative method)
ImageEnMView1.LockUpdate();
try
  for i := 0 to ImageEnMView1.MultiSelectedImagesCount-1 do
  begin
    selIdx := ImageEnMView1.MultiSelectedImages[i];
    bmp := ImageEnMView1.GetTIEBitmap( selIdx );
    try
      proc := TImageEnProc.CreateFromBitmap( bmp );
      try
        nAngle := proc.SkewDetection();
        proc.RotateAndCrop( nAngle, ierBilinear, bmp.Height / bmp.Width, iecaSkewedDocument );
      finally
        FreeAndNil(proc);
      end;

    finally
      ImageEnMView1.ReleaseBitmap( selIdx, True );
    end;
  end;
finally
  ImageEnMView1.UnlockUpdate();
end;


See Also

MultiSelectedImages
MultiSelectedImagesList
SelectedImage
IsSelected
MultiSelectionOptions