As you know, the use of bar codes is commonplace across numerous market sectors — the global increase in smartphone usage and the worldwide movement toward paperless payment systems has helped drive increased usage rates.
If you're using DevExpress Reports or considering it for future use, it is important to correctly configure barcodes so that barcode scanning devices can read information accurately.
The DevExpress XRBarCode
report control already offers various properties to modify barcode settings, such as size, bar width, and symbology. One of its most important properties is called Module
. This property specifies the size of barcode bars in report units (in hundredths of an inch by default). For instance:
Codabar, Module = 3
Codabar, Module = 6
Another useful property is called AutoModule
. It allows you to automatically modify a single bar's width (i.e, the Module
value) so that the barcode bars fit the control’s entire width. See the example below:
An automatic module adjustment is beneficial as manual module calculations might introduce issues (depending on the scanning device/the surface on which the barcode will be scanned, you may need to set up a different density of barcode bars).
In our next major release v22.2, we expect to enhance our automatic barcode configuration option: the goal is to make it easier/more transparent for those who need to adjust barcode bar density for their target printing device. Please review the sections below for more information in this regard.
The New TargetDeviceDpi Property
We will extend the XRBarCode
class with a new property called TargetDeviceDpi
. This property will allow you to specify the DPI of the device on which you wish to print your barcode.
The XRBarCode
will automatically adjust bar density once you specify a value for this property. Setting up this property will ensure you that the barcode will be scanned correctly on the target device (especially useful when your printing device has non-standard DPI settings).
The Read-Only ActualModule Property
This new property will display the module value for the barcode after the automatic calculations mentioned above (e.g., when using AutoModule
and TargetDeviceDpi
properties).
An example of when this property will be of value: imagine, you have a document region filled with QRCode and a logo in its center. At present, our AutoModule
and QRCodeGenerator.Logo
properties are mutually exclusive: meaning that the first is disabled when the other is enabled. The use of ActualModule
property value will allow you to specify the Module
property manually to fill the document area for the barcode and then set up the logo as needed.
Your Feedback Counts
Please share your thoughts about the v22.2-related barcode enhancements mentioned in this post.