public class ColorResolutionCommandDataEventArgs : EventArgs
Public Class ColorResolutionCommandDataEventArgs
Inherits System.EventArgs
public class ColorResolutionCommandDataEvent extends LeadEvent
public ref class ColorResolutionCommandDataEventArgs : public System.EventArgs
This example will convert an image from 24 to 1 bits/pixel saving the data into an external image manually
using Leadtools;
using Leadtools.Codecs;
using Leadtools.ImageProcessing;
using LeadtoolsExamples.Common;
public void ColorResolutionCommandDataEventArgsExample()
{
RasterCodecs codecs = new RasterCodecs();
string srcFileName = Path.Combine(ImagesPath.Path, "Image1.cmp");
string destFileName = Path.Combine(ImagesPath.Path, "Image1_colorresData.bmp");
// Load the source image from disk
RasterImage srcImage = codecs.Load(srcFileName);
// Create the destination image
_row = 0;
_destImage = new RasterImage(
RasterMemoryFlags.Conventional,
srcImage.Width,
srcImage.Height,
1,
RasterByteOrder.Rgb,
RasterViewPerspective.TopLeft,
null,
IntPtr.Zero,
0);
// Color-res the image to 1 bits/pixel, we will save the data ourselves into
// the destination image
ColorResolutionCommand command = new ColorResolutionCommand();
command.BitsPerPixel = 1;
command.DitheringMethod = RasterDitheringMethod.FloydStein;
command.Data += new EventHandler<ColorResolutionCommandDataEventArgs>(command_Data);
_destImage.Access();
command.Run(srcImage);
_destImage.Release();
command.Data -= new EventHandler<ColorResolutionCommandDataEventArgs>(command_Data);
// Save it to disk
codecs.Save(_destImage, destFileName, RasterImageFormat.Bmp, 4);
// Clean Up
_destImage.Dispose();
srcImage.Dispose();
codecs.Dispose();
}
RasterImage _destImage;
int _row;
void command_Data(object sender, ColorResolutionCommandDataEventArgs e)
{
// Set the data into the destination image
_destImage.SetRow(_row, e.Data, _destImage.BytesPerLine * e.Lines);
_row += e.Lines;
// If you want the data in a managed buffer,
// you can do this
// byte[] data = new byte[_destImage.BytesPerLine * e.Lines];
// System.Runtime.InteropServices.Marshal.Copy(e.Data, data, 0, data.Length);
}
Imports Leadtools
Imports Leadtools.Codecs
Imports Leadtools.ImageProcessing
Public Sub ColorResolutionCommandDataEventArgsExample()
Dim codecs As RasterCodecs = New RasterCodecs()
Dim srcFileName As String = Path.Combine(LEAD_VARS.ImagesDir, "Image1.cmp")
Dim destFileName As String = Path.Combine(LEAD_VARS.ImagesDir, "Image1_colorresData.bmp")
' Load the source image from disk
Dim srcImage As RasterImage = codecs.Load(srcFileName)
' Create the destination image
_row = 0
_destImage = New RasterImage(RasterMemoryFlags.Conventional, srcImage.Width, srcImage.Height,
1, RasterByteOrder.Rgb, RasterViewPerspective.TopLeft, Nothing, IntPtr.Zero, 0)
' Color-res the image to 1 bits/pixel, we will save the data ourselves into
' the destination image
Dim command As ColorResolutionCommand = New ColorResolutionCommand()
command.BitsPerPixel = 1
command.DitheringMethod = RasterDitheringMethod.FloydStein
AddHandler command.Data, AddressOf command_Data
_destImage.Access()
command.Run(srcImage)
_destImage.Release()
RemoveHandler command.Data, AddressOf command_Data
' Save it to disk
codecs.Save(_destImage, destFileName, RasterImageFormat.Bmp, 4)
_destImage.Dispose()
' Clean Up
srcImage.Dispose()
End Sub
Private _destImage As RasterImage
Private _row As Integer
Private Sub command_Data(ByVal sender As Object, ByVal e As ColorResolutionCommandDataEventArgs)
' Set the data into the destination image
_destImage.SetRow(_row, e.Data, _destImage.BytesPerLine * e.Lines)
_row += e.Lines
' If you want the data in a managed buffer,
' you can do this
' byte[] data = new byte[_destImage.BytesPerLine * e.Lines];
' System.Runtime.InteropServices.Marshal.Copy(e.Data, data, 0, data.Length);
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.Windows.Media;
public void ColorResolutionCommandDataEventArgsExample(RasterImage srcImage, Stream destStream)
{
RasterCodecs codecs = new RasterCodecs();
// Create the destination image
_row = 0;
_destImage = new RasterImage(
RasterMemoryFlags.Conventional,
srcImage.Width,
srcImage.Height,
1,
RasterByteOrder.Rgb,
RasterViewPerspective.TopLeft,
null,
null,
0);
// Color-res the image to 1 bits/pixel, we will save the data ourselves into
// the destination image
ColorResolutionCommand command = new ColorResolutionCommand();
command.BitsPerPixel = 1;
command.DitheringMethod = RasterDitheringMethod.FloydStein;
command.Data += new EventHandler<ColorResolutionCommandDataEventArgs>(command_Data);
command.Run(srcImage);
command.Data -= new EventHandler<ColorResolutionCommandDataEventArgs>(command_Data);
// Save it to disk
codecs.Save(_destImage, destStream, RasterImageFormat.Bmp, 4);
_destImage.Dispose();
// Clean Up
srcImage.Dispose();
}
RasterImage _destImage;
int _row;
void command_Data(object sender, ColorResolutionCommandDataEventArgs e)
{
// Set the data into the destination image
_destImage.SetRow(_row, e.DataArray, 0, _destImage.BytesPerLine * e.Lines);
_row += e.Lines;
}
vb[Silverlight VB Example]
Imports Leadtools
Imports Leadtools.Codecs
Imports Leadtools.ImageProcessing
Imports Leadtools.Windows.Media
Public Sub ColorResolutionCommandDataEventArgsExample(ByVal srcImage As RasterImage, ByVal destStream As Stream)
Dim codecs As RasterCodecs = New RasterCodecs()
' Create the destination image
_row = 0
_destImage = New RasterImage(RasterMemoryFlags.Conventional, srcImage.Width, srcImage.Height, 1, RasterByteOrder.Rgb, RasterViewPerspective.TopLeft, Nothing, Nothing, 0)
' Color-res the image to 1 bits/pixel, we will save the data ourselves into
' the destination image
Dim command As ColorResolutionCommand = New ColorResolutionCommand()
command.BitsPerPixel = 1
command.DitheringMethod = RasterDitheringMethod.FloydStein
AddHandler command.Data, AddressOf command_Data
command.Run(srcImage)
RemoveHandler command.Data, AddressOf command_Data
' Save it to disk
codecs.Save(_destImage, destStream, RasterImageFormat.Bmp, 4)
_destImage.Dispose()
' Clean Up
srcImage.Dispose()
End Sub
Private _destImage As RasterImage
Private _row As Integer
Private Sub command_Data(ByVal sender As Object, ByVal e As ColorResolutionCommandDataEventArgs)
' Set the data into the destination image
_destImage.SetRow(_row, e.DataArray, 0, _destImage.BytesPerLine * e.Lines)
_row += e.Lines
End Sub
Help Collections
Raster .NET | C API | C++ Class Library | HTML5 JavaScript
Document .NET | C API | C++ Class Library | HTML5 JavaScript
Medical .NET | C API | C++ Class Library | HTML5 JavaScript
Medical Web Viewer .NET
Multimedia
Direct Show .NET | C API | Filters
Media Foundation .NET | C API | Transforms
Supported Platforms
.NET, Java, Android, and iOS/macOS Assemblies
Imaging, Medical, and Document
C API/C++ Class Libraries
Imaging, Medical, and Document
HTML5 JavaScript Libraries
Imaging, Medical, and Document
Your email has been sent to support! Someone should be in touch! If your matter is urgent please come back into chat.
Chat Hours:
Monday - Friday, 8:30am to 6pm ET
Thank you for your feedback!
Please fill out the form again to start a new chat.
All agents are currently offline.
Chat Hours:
Monday - Friday
8:30AM - 6PM EST
To contact us please fill out this form and we will contact you via email.