Skip to content

How to detect barcodes when they are arranged horizontally and vertically at the same time? #593

@Wjat777

Description

@Wjat777

Hi,

Firstly, sorry to post this as an issue (I know this is not a bug), but I don't found a official community forum for ZXing integration.

I have this 3 situations:
BarCode1.jpg : 2 Barcodes code 128 and 2 Barcodes 39=>All codes are read correctly

Image

CODE_39[39;210;327;210] : ABC-1234
CODE_128[33;105;319;105] : ABC-abc-1234
CODE_128[424;52;600;52] : 123456787
CODE_39[404;213;628;213] : 123456

BarCode2.jpg : 2 Barcodes code 128 (1 horizontal and 1 vertical) and 3 Barcodes 39(1 horizontal and 1 vertical)=>Only horizontal codes are read correctly

Image

CODE_39[39;210;327;210] : ABC-1234
CODE_128[33;105;319;105] : ABC-abc-1234

BarCode3.jpg : 2 Barcodes code 128 (1 horizontal and 1 vertical) and 2 Barcodes 39(2 horizontal and 1 vertical)=>Only horizontal codes are read correctly and the duplicate code was ignored.

Image

CODE_39[39;267;327;267] : ABC-1234
CODE_128[33;133;319;133] : ABC-abc-1234

My code is very simple

private string ScanBarcode(Bitmap bitmap)
{
	Bitmap target;
	var reader = new ZXing.Windows.Compatibility.BarcodeReader()
	{
		AutoRotate = true,
		Options = new DecodingOptions
		{
			TryHarder = true,
			PureBarcode = false,
			ReturnCodabarStartEnd = true,
		}
	};
	Result[] result = reader.DecodeMultiple(bitmap);
	if (result==null) return "not found";
	string barcodeResult = "";
	foreach (var res in result)
	{
		barcodeResult += res.BarcodeFormat.ToString() +"[" +res.ResultPoints[0].X +";"+ res.ResultPoints[0].Y +";" +res.ResultPoints[1].X + ";" + res.ResultPoints[1].Y + "]" + " : " + res.Text + "\r\n";
	}
	return barcodeResult;
}

I'm using ZXing.Windows.Compatibility (0.16.13.0) and ZWing (0.16.10.0)

My questions are
1 - Exists an option to force read all barcodes regardless of orientation?
2 - Exists an option to force read all barcodes regardless of whether they are duplicated?

The case of duplication is weird but we have some forms where the same barcode is duplicated, I think, for redundancy reasons if the form is scratched out, but I would still like to get the position of both barcodes.

Thanks

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions