←Select platform

ClearNegativePixelsCommand Class

Summary

Sets all pixels with negative color values to 0.

Syntax

C#
VB
Java
Objective-C
WinRT C#
C++
public class ClearNegativePixelsCommand : RasterCommand 
Public Class ClearNegativePixelsCommand  
   Inherits Leadtools.Imageprocessing.RasterCommand 
   Implements Leadtools.Imageprocessing.IRasterCommand  
public sealed class ClearNegativePixelsCommand : Leadtools.Imageprocessing.IRasterCommand   
@interface LTClearNegativePixelsCommand : LTRasterCommand 
public class ClearNegativePixelsCommand extends RasterCommand 
function Leadtools.ImageProcessing.ClearNegativePixelsCommand() 
public ref class ClearNegativePixelsCommand : public Leadtools.Imageprocessing.RasterCommand, Leadtools.Imageprocessing.IRasterCommand   

Remarks

If CodecsLoadOptions.Signed is true when a file is loaded, the image may contain negative pixel values and LEADTOOLS will paint/process the image incorrectly. In order to use this image correctly, you must user ClearNegativePixelsCommand. If the CodecsLoadOptions.Signed property is false, all negative pixels are cleared internally, during the load process.

Since some TIFF files are saved with negative values for pixel colors, you should use ClearNegativePixelsCommand if, after loading an image, RasterImage.Signed is true. ClearNegativePixelsCommand does nothing if RasterImage.IsSigned is false.

Programming tip: use ClearNegativePixelsCommand right after loading the image from file.

For more information, refer to Introduction to Image Processing With LEADTOOLS.

Example

This example sets the Signed flag in the load options, loads a tif file and clears the negative pixels.

C#
VB
Silverlight C#
Silverlight VB
using Leadtools; 
using Leadtools.Codecs; 
using Leadtools.ImageProcessing; 
using LeadtoolsExamples.Common; 
 
public void ClearNegativePixelsCommandExample() 
{ 
   RasterCodecs codecs = new RasterCodecs(); 
 
   string srcFileName = Path.Combine(ImagesPath.Path, "Image1.cmp"); 
   string destFileName = Path.Combine(ImagesPath.Path, "CleanNegativePixelsCommand.tif"); 
 
   // Load the CMP file and convert it to TIF 
   RasterImage image = codecs.Load(srcFileName); 
   image.Signed = true; 
   codecs.Save(image, destFileName, RasterImageFormat.Tif, 24); 
   image.Dispose(); 
 
   // Load this image as signed 
   codecs.Options.Load.Signed = true; 
 
   // Load the source image from disk 
   image = codecs.Load(destFileName); 
   Assert.IsTrue(image.Signed); 
 
   // Clear the negative pixels and save it it back 
   ClearNegativePixelsCommand command = new ClearNegativePixelsCommand(); 
   command.Run(image); 
   Assert.IsTrue(!image.Signed); 
 
   codecs.Save(image, destFileName, RasterImageFormat.Tif, 24); 
 
   // Clean up 
   image.Dispose(); 
   codecs.Dispose(); 
} 
Imports Leadtools 
Imports Leadtools.Codecs 
Imports Leadtools.ImageProcessing 
 
Public Sub ClearNegativePixelsCommandExample() 
   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, "CleanNegativePixelsCommand.tif") 
 
   ' Load the CMP file and convert it to TIF 
   Dim image As RasterImage = codecs.Load(srcFileName) 
   image.Signed = True 
   codecs.Save(image, destFileName, RasterImageFormat.Tif, 24) 
   image.Dispose() 
 
   ' Load this image as signed 
   codecs.Options.Load.Signed = True 
 
   ' Load the source image from disk 
   image = codecs.Load(destFileName) 
   Debug.Assert(image.Signed) 
 
   ' Clear the negative pixels and save it it back 
   Dim command As ClearNegativePixelsCommand = New ClearNegativePixelsCommand() 
   command.Run(image) 
   Debug.Assert((Not image.Signed)) 
 
   codecs.Save(image, destFileName, RasterImageFormat.Tif, 24) 
 
   ' Clean up 
   image.Dispose() 
End Sub 
 
Public NotInheritable Class LEAD_VARS 
   Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images" 
End Class 
using Leadtools; 
using Leadtools.Codecs; 
using Leadtools.Examples; 
using Leadtools.ImageProcessing; 
using Leadtools.Windows.Media; 
 
public void ClearNegativePixelsCommandExample(RasterImage image, Stream destStream) 
{ 
   RasterCodecs codecs = new RasterCodecs(); 
 
   // convert it to TIF 
   image.Signed = true; 
   codecs.Save(image, destStream, RasterImageFormat.Tif, 24); 
   image.Dispose(); 
 
   // Load this image as signed 
   codecs.Options.Load.Signed = true; 
 
   // Load the source image 
   image = codecs.Load(destStream); 
   Debug.Assert(image.Signed); 
 
   // Clear the negative pixels and save it it back 
   ClearNegativePixelsCommand command = new ClearNegativePixelsCommand(); 
   command.Run(image); 
   Debug.Assert(!image.Signed); 
 
   codecs.Save(image, destStream, RasterImageFormat.Tif, 24); 
 
   // Clean up 
   image.Dispose(); 
} 
Imports Leadtools 
Imports Leadtools.Codecs 
Imports Leadtools.ImageProcessing 
Imports Leadtools.Windows.Media 
 
Public Sub ClearNegativePixelsCommandExample(ByVal image As RasterImage, ByVal destStream As Stream) 
   Dim codecs As RasterCodecs = New RasterCodecs() 
 
   ' convert it to TIF 
   image.Signed = True 
   codecs.Save(image, destStream, RasterImageFormat.Tif, 24) 
   image.Dispose() 
 
   ' Load this image as signed 
   codecs.Options.Load.Signed = True 
 
   ' Load the source image 
   image = codecs.Load(destStream) 
   Debug.Assert(image.Signed) 
 
   ' Clear the negative pixels and save it it back 
   Dim command As ClearNegativePixelsCommand = New ClearNegativePixelsCommand() 
   command.Run(image) 
   Debug.Assert((Not image.Signed)) 
 
   codecs.Save(image, destStream, RasterImageFormat.Tif, 24) 
 
   ' Clean up 
   image.Dispose() 
End Sub 

Requirements

Target Platforms

Help Version 19.0.2017.10.27
Products | Support | Contact Us | Copyright Notices
© 1991-2017 LEAD Technologies, Inc. All Rights Reserved.

Leadtools Assembly