Paint.NET - Barcode Plugin v1.1.x

After some user feedback on the Paint.NET Forum, I have released an update to my Barcode Plugin.

By the way, Sepcot, my previous comment about irregular selections was not a "bizarre observation": your plugin is actually written incorrectly, and its rendering will end up incorrect if changes are made to the rendering framework and how the region of interests are passed to effects. (Like what if I start dividing up the rendering based on rectangle tiles, instead of scanlines? etc)

-- Rick Brewster

Dude! I deal with barcodes all day. Can you make it output a POSTNET barcode w/Check digit?

-- barkbark00

'12345' encoded with POSTNET

'12345' encoded with POSTNET

After some major code refractoring, I am now building the barcode in a separate BarcodeSurface before any rendering is done to the destination surface. I now have separate classes for each type of barcode, making it easier to add additional barcode formats in the future. Barcode Plugin v1.1.0 supports POSTNET barcodes.


  • Supports all three Code 39 barcode encodings: Code 39, Code 39 mod 43, and Full ASCII Code 39
  • New: Supports 5, 6, 9, and 11 digit POSTNET encodings
  • Automatically tries to convert text into an encodable format. (Example: "" in Code 39 becomes "SEPCOT.COM")
  • Provides visual feedback for text that cannot be encoded.
  • Uses the user defined Primary and Secondary colors to build the barcodes. Note: Barcodes built with colors other than Black (Primary) and White (Secondary) will probably not scan correctly.
  • The width of the bars in the barcode adjust to fill the available space. No barcode is shown if the surface is too small for the barcode to be completely drawn.
  • Fixed: Supports non-rectangular selections. Note: Barcodes may not scan correctly if not rectangular.


  • Barcode Plugin Source Code - to install, drop the Barcode.dll file into your effects directory (typically: C:\Program Files\Paint.Net\Effects\)