Poor choice of default DPI and module width #39

Open
opened 2019-06-04 11:45:58 +02:00 by Firefox2005 · 0 comments
Firefox2005 commented 2019-06-04 11:45:58 +02:00 (Migrated from github.com)

I am using the library for generating Code128 barcodes which will later be integrated in another image.

Without setting any writer options the default values for the ImageWriter are: DPI=300 and ModuleWidth=0.2 (labeled mm in the docs but that is not correct, as 0.2 results in 2mm).
These settings do not go well together, as with 300dpi one dot has the size of 0.8466mm - so the default module width would equal 2.36dots.

I did not have a look into the rounding but I can confirm, that some barcodes I generate can not be read with these settings. If I set the module width to a number that results in an integer number of dots (e.g. 0.8466mm or multiples thereof) I am able to scan these barcodes.

In general one could ask, why it uses mm as a unit at all and not pixels or at least offers the possibility to set the module width in pixels without using DPI.

I am using the library for generating Code128 barcodes which will later be integrated in another image. Without setting any writer options the default values for the ImageWriter are: DPI=300 and ModuleWidth=0.2 (labeled mm in the docs but that is not correct, as 0.2 results in 2mm). These settings do not go well together, as with 300dpi one dot has the size of 0.8466mm - so the default module width would equal 2.36dots. I did not have a look into the rounding but I can confirm, that some barcodes I generate can not be read with these settings. If I set the module width to a number that results in an integer number of dots (e.g. 0.8466mm or multiples thereof) I am able to scan these barcodes. In general one could ask, why it uses mm as a unit at all and not pixels or at least offers the possibility to set the module width in pixels without using DPI.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
WhyNotHugo/python-barcode#39
No description provided.