Loads an image file, letting you specify the location of the image data within the stream.
Syntax
Visual Basic (Usage) | Copy Code |
---|
Dim instance As RasterImageViewer
Dim stream As Stream
Dim offset As Long
Dim count As Long
instance.Load(stream, offset, count)
|
Parameters
- stream
- A Stream containing the image data to load.
- offset
- Offset from the beginning of the stream at which loading should begin.
- count
- Total size of the image file data.
Example
This example will load an image located in an offset into a stream.
Visual Basic | Copy Code |
---|
Public Sub RasterImageViewer_Load3(ByVal viewer As RasterImageViewer)
Dim srcFileName As String = "C:\Program Files\LEAD Technologies\LEADTOOLS 15\Images\Image1.cmp"
Dim destFileName As String = "C:\Program Files\LEAD Technologies\LEADTOOLS 15\Images\Image1_LoadStreamOffset1.bmp"
Dim ms As MemoryStream = New MemoryStream()
Dim headerSize As Integer = 4
Dim i As Integer = 0
Do While i < headerSize
ms.WriteByte(0)
i += 1
Loop
Dim fs As FileStream = File.OpenRead(srcFileName)
Const bufferSize As Integer = 1024
Dim buffer As Byte() = New Byte(bufferSize - 1) {}
Dim bytesRead As Integer
Do
bytesRead = fs.Read(buffer, 0, bufferSize)
If bytesRead > 0 Then
ms.Write(buffer, 0, bytesRead)
End If
Loop While bytesRead > 0
fs.Close()
ms.Position = 0
Dim offset As Long = headerSize
Dim count As Long = ms.Length - headerSize
viewer.Load(ms, offset, count)
viewer.Save(destFileName, RasterImageFormat.Bmp, 24, 0)
End Sub |
C# | Copy Code |
---|
public void RasterImageViewer_Load3(RasterImageViewer viewer) { string srcFileName = @"C:\Program Files\LEAD Technologies\LEADTOOLS 15\Images\Image1.cmp"; string destFileName = @"C:\Program Files\LEAD Technologies\LEADTOOLS 15\Images\Image1_LoadStreamOffset1.bmp"; // Create a memory stream, add a custom header and then copy the content of the file // into this stream. After that, load the image from the stream using the given offset. MemoryStream ms = new MemoryStream(); // Add a custom header to the stream (4 bytes) int headerSize = 4; for (int i = 0; i < headerSize; i++) ms.WriteByte(0); // Now append the file into this stream FileStream fs = File.OpenRead(srcFileName); const int bufferSize = 1024; byte[] buffer = new byte[bufferSize]; int bytesRead; do { bytesRead = fs.Read(buffer, 0, bufferSize); if (bytesRead > 0) ms.Write(buffer, 0, bytesRead); } while (bytesRead > 0); fs.Close(); // Reset the memory stream position to the beginning ms.Position = 0; // Now load the image with the offset long offset = headerSize; long count = ms.Length - headerSize; viewer.Load(ms, offset, count); // Save this image back to disk viewer.Save(destFileName, RasterImageFormat.Bmp, 24, 0); } |
Remarks
Requirements
Target Platforms: Microsoft .NET Framework 3.0, Windows XP, Windows Vista, and Windows Server 2003 family
See Also