Class InvertFilter
A filter to invert image colors.
Inheritance
Implements
Namespace: IronBarCode
Assembly: IronBarCode.dll
Syntax
public class InvertFilter : Object, IImageFilter
Reading a barcode printed light-on-dark runs through InvertFilter, which flips the colors of an image so a white code on a black background becomes the dark-on-light pattern a decoder expects. Most scanners and most reader pipelines assume dark bars on a light field, and a negative image, a reversed photo, or a screen capture with an inverted theme reads as noise until the polarity is corrected. This filter swaps light and dark across the whole image, or across a single region when only part of the frame is reversed.
The filter implements IImageFilter and is added to the ImageFilterCollection on BarcodeReaderOptions.ImageFilters, where filters run in collection order before the read. A developer constructs it, adds it to the collection, and passes the options to BarcodeReader.Read. The parameterless constructor inverts the entire image. The InvertFilter(Rectangle rectangle) overload, or the Rectangle property, confines the inversion to a region described by an IronSoftware.Drawing.Rectangle, useful when one labeled area is reversed but the rest of the page is normal.
using IronBarCode;
var options = new BarcodeReaderOptions
{
ImageFilters = new ImageFilterCollection { new InvertFilter() }
};
var results = BarcodeReader.Read("negative.png", options);The image correction how-to shows the correction filters on a sample barcode, and the imperfect barcode example reads a degraded image through a filter pipeline.
Constructors
InvertFilter()
Initializes a new instance of the InvertFilter class.
Declaration
public InvertFilter()
InvertFilter(Rectangle)
Initializes a new instance of the InvertFilter class with a specified Rectangle region.
Declaration
public InvertFilter(Rectangle rectangle)
Parameters
| Type | Name | Description |
|---|---|---|
| IronSoftware.Drawing.Rectangle | rectangle | Rectangle region to apply the filter on. |
Properties
Rectangle
Rectangle region to apply the filter on.
Declaration
public Rectangle Rectangle { get; set; }
Property Value
| Type | Description |
|---|---|
| IronSoftware.Drawing.Rectangle |