Skip to content

wconrad/usps_intelligent_barcode

 
 

Repository files navigation

Gem Version Dependency Status Build Status Code Climate

usps_intelligent_barcode is a pure ruby gem to generate a USPS IMB (Intelligent Mail Barcode). More specifically, it generates the string of characters you should print using one of the USPS Intelligent Barcode fonts.

Origin

This project was forked from Ryan Taylor's https://github.com/rtlong/USPS-intelligent-barcode Long, in order to add tests and refactor. It is not a drop-in replacement: I renamed most methods and classes, and eliminated the #draw method.

Install

$ gem install USPS-intelligent-barcode

Example

#!/usr/bin/env ruby

require 'rubygems'
require 'usps_intelligent_barcode'

barcode_id = '01'
service_type = '234'
mailer_id = '567094'
serial_number = '987654321'
routing_code = '01234567891'
barcode = Imb::Barcode.new(barcode_id,
                           service_type,
                           mailer_id,
                           serial_number,
                           routing_code)
p barcode.barcode_letters
# => "AADTFFDFTDADTAADAATFDTDDAAADDTDTTDAFADADDDTFFFDDTTTADFAAADFTDAADA"

Standard

This gem is based upon standard USPS-B-3200H, which is linked to from Intelligent Mail Barcode for Mailpieces

Supported Ruby Versions

These Ruby versions are supported (these are the rvm platform names):

  • jruby-1.7
  • ruby-1.9.3
  • ruby-2.0
  • ruby-2.1
  • ruby-2.2
  • ruby-2.3

For ruby-1.8.7 please see the deprecated USPS-intelligent-barcode gem.

whoami

Wayne Conrad kf7qga@gmail.com

Gem versioning

This library uses Semantic Versioning. It promises not to make breaking changes to its API without bumping the major version.

Credits

Thanks to Ryan Taylor Long for his original work, without which I would have been lost in the USPS specification.

About

A ruby gem for generating USPS Intelligent Mail Barcodes. Formerly known as USPS-intelligent-barcode.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Ruby 100.0%