So the problem is your html code:
Your image size displayed is: 280px (width) × 70px (height)
The height of 70 px is given by your barcode parameter inserted (/h70/). (Default value is 100 px.)
The scale value given is the default one (/s1/).
It is because you enforce the image width to be 280 pix.
So it generates an homothetic distorsion, by stretching it, perhaps not convenient for scanner reading, anyway, giving this blur aspect.
Anyway, with the distortion, the height is enforced to 128px, bypassing the h70 you defined.
I tried it without the width attribute, and the image seems far clearer.
The problem is that using scale x2 generates a pretty larger image, probably not convenient for your email delivery:
286 (w) x140 (h)
To my mind, the better would be to suppress this width attribute.
I also had a look on the barcode.jsp source code in the datakit folder on the server, and I find it would be risky to modify it to try to get out the relative number below.
...not to mention that any build update would probably override your change...
I am using a 1D barcode, in particular EAN 128.
<img src="http://serverdomain/barcode/tEAN128/h70/s1/v<%= encodeURIComponent('' + recipient.customerBarcodeNum + '').replace(/%2F/gi,'/')%>/barcode.gif" width="280" style="margin:0px; padding:0px; display:inline;" border="0">
Regarding the image quality you get, please may you indicate the personalisation code you have inserted in your delivery?
(domain not useful, replace it with "serverdomain")
For instance for GS1-128 (formely EAN 128), using scale 1, height 100 pixels:
<img src="http://serverdomain/barcode/tEAN128/h100/s1/v<%= encodeURIComponent('1234567890123').replace(/%2F/gi,'/')%>/barcode.gif">
And if possible please also share the image result itself, not the email rendering itself.
I wonder if it is not your html template that doesn't let enough place for the image gif generated to be displayed at its default size.
I don't know if it exists a 2D barcode format without the relative number below.
I always used EAN 13 so far (or QR Code) with its below number.
And I think it is convenient as is, in case of scanner mistake, letting people type it manually.