Error processing SSI file
LEADTOOLS Image File Support (Leadtools.Codecs assembly)

Show in webframe

LoadAsync(Stream,Int32,Object) Method








A Stream containing the image data to load.
The 1-based page number.
A user-defined object that is passed to the method invoked when the asynchronous operation completes.
Loads the specified page from an image stream using default options asynchronously.
Syntax
'Declaration
 
Public Overloads Function LoadAsync( _
   ByVal stream As Stream, _
   ByVal pageNumber As Integer, _
   ByVal userState As Object _
) As RasterImage
'Usage
 
Dim instance As RasterCodecs
Dim stream As Stream
Dim pageNumber As Integer
Dim userState As Object
Dim value As RasterImage
 
value = instance.LoadAsync(stream, pageNumber, userState)
- (void)loadStreamAsync:(LTLeadStream *)stream 
             pageNumber:(NSInteger)pageNumber 
             completion:(void (^)(LTRasterImage * __nullable image, NSError * __nullable error))completion
             
public Object loadAsync(ILeadStream stream, int pageNumber, Object userState)
 function Leadtools.Codecs.RasterCodecs.LoadAsync(Stream,Int32,Object)( 
   stream ,
   pageNumber ,
   userState 
)

Parameters

stream
A Stream containing the image data to load.
pageNumber
The 1-based page number.
userState
A user-defined object that is passed to the method invoked when the asynchronous operation completes.

Return Value

The RasterImage object that this method loads. See remarks for the usage of this object.
Remarks

The stream can point to any supported image file format and bits per pixel, whether compressed or uncompressed.

This method will load a single page from a multi-page file. The resulting image will have the same bits/pixel and color order value of the image as it was stored in the stream.

LEADTOOLS will attempt to load corrupted files so you can see at least a portion of the image. For these images, the load methods succeed, but LoadStatus will return an error code.

Use the CodecsLoadOptions class to set up other load option parameters before calling this method.

Support for 12 and 16-bit grayscale images is only available in the Document/Medical Imaging editions.

For supported formats, refer to Summary of All Supported Image File Formats.

LEADTOOLS loads all PDF files as Raster PDF uncompressed RasterImageFormat.RasPdf, regardless of the compression and color space used when saving the file.

The RasterCodecs class supports loading image files asynchronously using the LoadAsync methods. When calling any of these methods, the caller thread will not be blocked and the method will return instantly with an instance of RasterImage that is in a loading status (RasterImage.IsLoading set to true). You should not use the other properties of this object while the object is in loading status.

When the RasterCodecs object finishes loading the image, the various properties of the RasterImage will be populated with the image information and data and the RasterImage.IsLoading property will be set to false.

Do not poll the RasterImage.IsLoading property to determine whether the image has finished loading. Instead, subscribe to the LoadAsyncCompleted event to get notification when the LoadAsync operation has completed and whether any errors occurred.

The LoadAsyncCompleted event data will also contain the same object returned from LoadAsync so you do not have to keep the original object in your application.

Example

This example will query the number of pages from a stream and then load them.

Copy Code  
using Leadtools;
using Leadtools.Codecs;
using Leadtools.ImageProcessing;
using Leadtools.ImageProcessing.Color;

      
public async Task LoadFile1Example()
{
   RasterCodecs codecs = new RasterCodecs();
   string singlePageFileName = @"Assets\Image1.cmp";
   string multiPageFileName = @"Assets\Eye.gif";

   // Get the file information (we are interested in the number of pages)
   StorageFile loadFile = await Tools.AppInstallFolder.GetFileAsync(singlePageFileName);
   CodecsImageInfo info = await codecs.GetInformationAsync(LeadStreamFactory.Create(loadFile), true, 1);
   Debug.WriteLine("Number of pages according to info: {0}", info.TotalPages);

   // Load the image and verify that we loaded all the pages
   RasterImage image = await codecs.LoadAsync(LeadStreamFactory.Create(loadFile));
   Debug.WriteLine("Number of pages loaded: {0}", image.PageCount);
   Assert.IsTrue(image.PageCount == info.TotalPages);
   image.Dispose();

   // Repeat for a multipage file
   loadFile = await Tools.AppInstallFolder.GetFileAsync(multiPageFileName);
   info = await codecs.GetInformationAsync(LeadStreamFactory.Create(loadFile), true, 1);
   Debug.WriteLine("Number of pages according to info: {0}", info.TotalPages);

   image = await codecs.LoadAsync(LeadStreamFactory.Create(loadFile), 1);
   Debug.WriteLine("Number of pages loaded: {0}", image.PageCount);
   Assert.IsTrue(image.PageCount == info.TotalPages);
   image.Dispose();

   // Clean up
   codecs.Dispose();
}
Requirements

Target Platforms

See Also

Reference

RasterCodecs Class
RasterCodecs Members
Overload List
Loading and Saving Images
Loading and Saving Large TIFF / BigTIFF Files
Speeding Up 1-Bit Documents
Fast File Info

Error processing SSI file