Having trouble getting RadBarcodes to scan unless made larger than default with LineWidth = 2. UPC-A and EAN are the troublemakers with LineWidth = 1. ITF-14 scans ok at LineWidth = 1.
As documentation suggests, we tried setting Height and Width to empty strings to let control size things as it needs based on LineWidth setting. Also tried using code like Height = New Unit(1.02, UnitType.inch) and Width = New Unit(1.469, UnitType.inch) to set to standard UPCA 1.02in x 1.469in size, but the RadBarcode control seems to just ignore the settings. Any clues as to why LineWidth = 1 won't scan? I can't find any other RadBarcode control properties that would help.
When I check the industry standard on UPCA, it says that the size is allowed to be anywhere from 80% to 200% of 1.02in x 1.469in. But I can't find any way to make the RadBarcode create it in anything but mutliple of LineWidth (i.e. LineWidth=1 is default size, LineWidth=2 is twice as large, ...etc).
Its not a problem with our scanner, which is able to scan other smaller UPCA and ITF14 barcodes (not generated from RadBarcode) without problem. We are using a pretty standard Motorola LS2208 handheld scanner for testing, which is what our vendors are using.
Declaring control as
<telerik:RadBarcode runat="server" ID="cuBarCode" Width="" Height="" ></telerik:RadBarcode>
Setting up in codebehind as follows since we have to support 4 different barcodes types based on user choice...
Public Sub SetRadbarcodeProperties(ByVal barcodeCtl As RadBarcode, ByVal bc As FPHBarCode)
barcodeCtl.OutputType = BarcodeOutputType.EmbeddedPNG
barcodeCtl.Text = bc.Value
Select Case bc.Type
Case "ITF-14"
barcodeCtl.Type = BarcodeType.Code25Interleaved
barcodeCtl.RenderChecksum = False
barcodeCtl.LineWidth = 2
Case "UPC-A"
barcodeCtl.Type = BarcodeType.UPCA
barcodeCtl.RenderChecksum = True
barcodeCtl.LineWidth = 2
Case "EAN-13"
barcodeCtl.Type = BarcodeType.EAN13
barcodeCtl.RenderChecksum = True
barcodeCtl.LineWidth = 2
Case "UPC-E"
barcodeCtl.Type = BarcodeType.UPCE
barcodeCtl.RenderChecksum = True
barcodeCtl.LineWidth = 2
Case Else
Throw New InvalidOperationException("Cannot handle barcode type=" + bc.Type)
End Select
End Sub