When using code128 in particular, several letters overlap.  Most prominently, upper-case M and W, but also others.  They are very wide and not being given the extra room they need.  e.g.  barcode -e code128 -b MWMW0M00W01

I can increase the margin, but that doesn't look very good and wastes a lot of space all the time, just to catch the few worst-cases.  My simple fix is to undo to the change to Helevtica (see ChangeLog), which has variable width characters, and go back to fixed-width CourierBold.  It works nicely here.


--- barcode/ps.c.dist	2018-03-29 10:16:55.385724848 -0700
+++ barcode/ps.c	2018-03-29 10:17:02.713610067 -0700
@@ -247,7 +247,7 @@
 	    fsav = f2;
 	}
 	fprintf(f,"]   { {} forall dup 0.00 ne {\n\t"
-		"/Helvetica findfont exch scalefont setfont\n"
+		"/CourierBold findfont exch scalefont setfont\n"
 		"    } {pop} ifelse\n"
 		"    moveto show} bind forall\n");
 	

Reply via email to