This example will use feed information to get information about an image from an URL
Imports Leadtools
Imports Leadtools.Codecs
Imports Leadtools.ImageProcessing
Imports Leadtools.ImageProcessing.Color
Imports Leadtools.Drawing
Imports Leadtools.Svg
Public Sub FeedGetInformationExample()
Dim codecs As New RasterCodecs()
Dim url As String = "https://www.leadtools.com/images/web-header.jpg"
' Create a WebRequest for the URL
Dim request As WebRequest = WebRequest.Create(url)
request.Proxy.Credentials = CredentialCache.DefaultCredentials
' reduce the timeout to 20 sec
request.Timeout = 20000
Dim response As WebResponse = request.GetResponse()
Try
Dim strm As Stream = response.GetResponseStream()
' Read chunks from the stream and feed load to the image
codecs.StartFeedGetInformation(True, 1)
Const bufferSize As Integer = 1024
Dim buffer(bufferSize - 1) As Byte
Dim more As Boolean
Do
System.Windows.Forms.Application.DoEvents()
Dim read As Integer = strm.Read(buffer, 0, bufferSize)
Console.WriteLine("Downloading {0} bytes", read)
If (read > 0) Then
more = codecs.FeedGetInformation(buffer, 0, read)
Else
' no more image data in the stream
more = False
End If
Loop While more
Finally
response.Close()
End Try
Dim info As CodecsImageInfo = codecs.StopFeedGetInformation()
' Clean up
codecs.Dispose()
' Show the information
Console.WriteLine(info.ToString())
End Sub
using Leadtools;
using Leadtools.Codecs;
using Leadtools.ImageProcessing;
using Leadtools.ImageProcessing.Color;
using Leadtools.Svg;
public void FeedGetInformationExample()
{
RasterCodecs codecs = new RasterCodecs();
string url = @"https://www.leadtools.com/images/page_graphics/leadlogo.png";
// Create a WebRequest for the URL
WebRequest request = WebRequest.Create(url);
request.Proxy.Credentials = CredentialCache.DefaultCredentials;
// reduce the timeout to 20 sec
request.Timeout = 20000;
WebResponse response = request.GetResponse();
try
{
Stream strm = response.GetResponseStream();
// Read chunks from the stream and feed load to the image
codecs.StartFeedGetInformation(true, 1);
const int bufferSize = 1024;
byte[] buffer = new byte[bufferSize];
bool more;
do
{
System.Windows.Forms.Application.DoEvents();
int read = strm.Read(buffer, 0, bufferSize);
Console.WriteLine("Downloading {0} bytes", read);
if (read > 0)
more = codecs.FeedGetInformation(buffer, 0, read);
else
{
// no more image data in the stream
more = false;
}
}
while (more);
}
finally
{
response.Close();
}
CodecsImageInfo info = codecs.StopFeedGetInformation();
// Clean up
codecs.Dispose();
// Show the information
Console.WriteLine(info.ToString());
}
//
//public async Task FeedGetInformationExample()
//{
// RasterCodecs codecs = new RasterCodecs();
// string url = @"https://www.leadtools.com/images/page_graphics/leadlogo.png";
// // Create a WebRequest for the URL
// WebRequest request = WebRequest.Create(url);
// request.Proxy.Credentials = CredentialCache.DefaultCredentials;
// WebResponse response = await request.GetResponseAsync();
// try
// {
// Stream strm = response.GetResponseStream();
// // Read chunks from the stream and feed load to the image
// codecs.StartFeedGetInformation(true, 1);
// const int bufferSize = 1024;
// byte[] buffer = new byte[bufferSize];
// bool more;
// do
// {
// int read = strm.Read(buffer, 0, bufferSize);
// console.info("Downloading {0} bytes", read);
// if (read > 0)
// more = codecs.FeedGetInformation(buffer, 0, read);
// else
// {
// // no more image data in the stream
// more = false;
// }
// }
// while (more);
// }
// finally
// {
// response.Dispose();
// }
// CodecsImageInfo info = codecs.StopFeedGetInformation();
// // Clean up
// codecs.Dispose();
// // Show the information
// console.info(info.GetStringDescription());
//}
//
using Leadtools;
using Leadtools.Codecs;
using Leadtools.ImageProcessing;
using Leadtools.ImageProcessing.Color;
public async Task FeedGetInformationExample()
{
RasterCodecs codecs = new RasterCodecs();
string url = @"https://www.leadtools.com/images/page_graphics/leadlogo.png";
// Create a WebRequest for the URL
WebRequest request = WebRequest.Create(url);
request.Proxy.Credentials = CredentialCache.DefaultCredentials;
WebResponse response = await request.GetResponseAsync();
try
{
Stream strm = response.GetResponseStream();
// Read chunks from the stream and feed load to the image
codecs.StartFeedGetInformation(true, 1);
const int bufferSize = 1024;
byte[] buffer = new byte[bufferSize];
bool more;
do
{
int read = strm.Read(buffer, 0, bufferSize);
Debug.WriteLine("Downloading {0} bytes", read);
if (read > 0)
more = codecs.FeedGetInformation(buffer, 0, read);
else
{
// no more image data in the stream
more = false;
}
}
while (more);
}
finally
{
response.Dispose();
}
CodecsImageInfo info = codecs.StopFeedGetInformation();
// Clean up
codecs.Dispose();
// Show the information
Debug.WriteLine(info.GetStringDescription());
}