←Select platform

LoadImage Event

Summary

Occurs during the file load process to provide functionality for manually handling the output image data or monitoring a progress status.

Syntax
C#
VB
C++
Java
public event EventHandler<CodecsLoadImageEventArgs> LoadImage 
Public Event LoadImage As EventHandler(Of CodecsLoadImageEventArgs) 
synchronized public void addLoadImageListener(CodecsLoadImageListener listener) 
synchronized public void removeLoadImageListener(CodecsLoadImageListener listener) 
public: 
event EventHandler<CodecsLoadImageEventArgs^>^ LoadImage 

Event Data

The event handler receives an argument of type CodecsLoadImageEventArgs containing data related to this event. The following CodecsLoadImageEventArgs properties provide information specific to this event.

PropertyDescription
Buffer Gets the memory buffer containing one or more lines of output image data.

Remarks

This event will fire during loading images with the Load and LoadAsync methods. You can use this event to get information about the image being loaded, manually handle the image scanline data or provide a progress status as well as to abort the load operation.

Example
C#
VB
using Leadtools; 
using Leadtools.Codecs; 
using Leadtools.ImageProcessing; 
using Leadtools.ImageProcessing.Color; 
using Leadtools.Svg; 
using LeadtoolsExamples.Common; 
 
private void Codecs_LoadImage(object sender, CodecsLoadImageEventArgs e) 
{ 
   e.Cancel = true; 
 
   // get all properties for the CodecsLoadImageEventArgs class. 
   Console.WriteLine("File name is: {0}", e.FileName); 
   Console.WriteLine("The Image width and height is: {0},{1}", e.Image.Width, e.Image.Height); 
   Console.WriteLine("The Length of the buffer is: {0}", e.Buffer.Length); 
   Console.WriteLine("The current row in the first line of the buffer is: {0}", e.Row); 
 
   if (e.OffsetValid) 
   { 
      Console.WriteLine("Offset count is : {0}", e.OffsetCount); 
      Console.WriteLine("Offset value is : {0}", e.Offset); 
   } 
 
   if (e.TileValid) 
   { 
      LeadRect rect = e.Tile; 
      Console.WriteLine("Tile Dimension ({0},{1},{2},{3)}", rect.X, rect.Y, rect.Width, rect.Height); 
   } 
 
   Console.WriteLine("Image p number: {0}", e.ImagePage); 
   Console.WriteLine("First page number: {0}", e.FirstPage); 
   Console.WriteLine("Current page number: {0}", e.Page); 
   Console.WriteLine("Last page number: {0}", e.LastPage); 
   Console.WriteLine("Page percent: {0}%", e.PagePercent); 
   Console.WriteLine("Total percent: {0}%", e.TotalPercent); 
   Console.WriteLine("Flags = {0}", e.Flags); 
 
   System.IO.Stream loadStream = e.Stream; 
   CodecsImageInfo info = e.Info; 
   e.Cancel = false; 
} 
 
public void LoadImageExample() 
{ 
   RasterCodecs codecs = new RasterCodecs(); 
 
   codecs.LoadImage += new EventHandler<CodecsLoadImageEventArgs>(Codecs_LoadImage); 
   RasterImage image = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "Image1.cmp")); 
   codecs.LoadImage -= new EventHandler<CodecsLoadImageEventArgs>(Codecs_LoadImage); 
 
   // Clean up 
   codecs.Dispose(); 
   image.Dispose(); 
} 
 
static class LEAD_VARS 
{ 
   public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images"; 
} 
Imports Leadtools 
Imports Leadtools.Codecs 
Imports Leadtools.ImageProcessing 
Imports Leadtools.ImageProcessing.Color 
Imports Leadtools.Drawing 
Imports Leadtools.Svg 
 
Private Sub Codecs_LoadImage(ByVal sender As Object, ByVal e As CodecsLoadImageEventArgs) 
   e.Cancel = True 
 
   ' get all properties for the CodecsLoadImageEventArgs class. 
   Console.WriteLine("File name is: {0}", e.FileName) 
   Console.WriteLine("The Image width and height is: {0},{1}", e.Image.Width, e.Image.Height) 
   Console.WriteLine("The Length of the buffer is: {0}", e.Buffer.Length) 
   Console.WriteLine("The current row in the first line of the buffer is: {0}", e.Row) 
 
   If e.OffsetValid Then 
      Console.WriteLine("Offset count is : {0}", e.OffsetCount) 
      Console.WriteLine("Offset value is : {0}", e.Offset) 
   End If 
 
   If e.TileValid Then 
      Dim rect As LeadRect = e.Tile 
      Console.WriteLine("Tile Dimension ({0},{1},{2},{3)}", rect.X, rect.Y, rect.Width, rect.Height) 
   End If 
 
 
   Console.WriteLine("Image p number: {0}", e.ImagePage) 
   Console.WriteLine("First page number: {0}", e.FirstPage) 
   Console.WriteLine("Current page number: {0}", e.Page) 
   Console.WriteLine("Last page number: {0}", e.LastPage) 
   Console.WriteLine("Page percent: {0}%", e.PagePercent) 
   Console.WriteLine("Total percent: {0}%", e.TotalPercent) 
   Console.WriteLine("Flags = {0}", e.Flags) 
 
   Dim loadStream As System.IO.Stream = e.Stream 
   Dim info As CodecsImageInfo = e.Info 
   e.Cancel = False 
End Sub 
 
Public Sub LoadImageExample() 
   Dim codecs As RasterCodecs = New RasterCodecs() 
 
   AddHandler codecs.LoadImage, AddressOf Codecs_LoadImage 
   Dim image As RasterImage = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "Image1.cmp")) 
   RemoveHandler codecs.LoadImage, AddressOf Codecs_LoadImage 
 
   ' Clean up 
   codecs.Dispose() 
   image.Dispose() 
End Sub 
 
Public NotInheritable Class LEAD_VARS 
   Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images" 
End Class 
c#[Silverlight C# Example] 
using Leadtools; 
using Leadtools.Codecs; 
using Leadtools.Examples; 
using Leadtools.ImageProcessing; 
using Leadtools.ImageProcessing.Color; 
using Leadtools.Windows.Media; 
 
private void Codecs_LoadImage(object sender, CodecsLoadImageEventArgs e) 
{ 
   e.Cancel = true; 
   if (e.Buffer.Length != 0) 
   { 
      // get all properties for the CodecsLoadImageEventArgs class. 
      Debug.WriteLine("File name is: {0}", e.FileName); 
      Debug.WriteLine("The Image width and height is: {0},{1}", e.Image.Width, e.Image.Height); 
      Debug.WriteLine("The Length of the buffer is: {0}", e.Buffer.Length); 
      Debug.WriteLine("The current row in the first line of the buffer is: {0}", e.Row); 
 
      if (e.TileValid) 
      { 
         LeadRect rect = e.Tile; 
         Debug.WriteLine("Tile Dimension ({0},{1},{2},{3)}", rect.X, rect.Y, rect.Width, rect.Height); 
      } 
 
      Debug.WriteLine("Page Index is: {0}", e.Page); 
      Debug.WriteLine("Page Count is: {0}", e.LastPage); 
      Debug.WriteLine("Image Page Index is: {0}", e.ImagePage); 
      Debug.WriteLine("Flags = {0}", e.Flags); 
 
      System.IO.Stream loadStream = e.Stream; 
      CodecsImageInfo info = e.Info; 
      e.Cancel = false; 
   } 
} 
 
public void LoadImageExample(Stream inStream) 
{ 
   RasterCodecs codecs = new RasterCodecs(); 
 
   codecs.LoadImage += new EventHandler<CodecsLoadImageEventArgs>(Codecs_LoadImage); 
   RasterImage image = codecs.Load(inStream); 
   codecs.LoadImage -= new EventHandler<CodecsLoadImageEventArgs>(Codecs_LoadImage); 
 
   // Clean up 
   image.Dispose(); 
} 
vb[Silverlight VB Example] 
Imports Leadtools 
Imports Leadtools.Codecs 
Imports Leadtools.ImageProcessing 
Imports Leadtools.ImageProcessing.Color 
Imports Leadtools.Windows.Media 
 
Private Sub Codecs_LoadImage(ByVal sender As Object, ByVal e As CodecsLoadImageEventArgs) 
   e.Cancel = True 
   If e.Buffer.Length <> 0 Then 
      ' get all properties for the CodecsLoadImageEventArgs class. 
      Debug.WriteLine("File name is: {0}", e.FileName) 
      Debug.WriteLine("The Image width and height is: {0},{1}", e.Image.Width, e.Image.Height) 
      Debug.WriteLine("The Length of the buffer is: {0}", e.Buffer.Length) 
      Debug.WriteLine("The current row in the first line of the buffer is: {0}", e.Row) 
 
      If e.TileValid Then 
         Dim rect As LeadRect = e.Tile 
         Debug.WriteLine("Tile Dimension ({0},{1},{2},{3)}", rect.X, rect.Y, rect.Width, rect.Height) 
      End If 
 
      Debug.WriteLine("Page Index is: {0}", e.Page) 
      Debug.WriteLine("Page Count is: {0}", e.LastPage) 
      Debug.WriteLine("Image Page Index is: {0}", e.ImagePage) 
      Debug.WriteLine("Flags = {0}", e.Flags) 
 
      Dim loadStream As System.IO.Stream = e.Stream 
      Dim info As CodecsImageInfo = e.Info 
      e.Cancel = False 
   End If 
End Sub 
 
Public Sub LoadImageExample(ByVal inStream As Stream) 
   Dim codecs As RasterCodecs = New RasterCodecs() 
 
   AddHandler codecs.LoadImage, AddressOf Codecs_LoadImage 
   Dim image As RasterImage = codecs.Load(inStream) 
   RemoveHandler codecs.LoadImage, AddressOf Codecs_LoadImage 
 
   ' Clean up 
   image.Dispose() 
End Sub 

Requirements

Target Platforms

Help Version 20.0.2020.4.3
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2020 LEAD Technologies, Inc. All Rights Reserved.

Leadtools.Codecs Assembly