【发布时间】:2012-01-25 03:01:14
【问题描述】:
在 asp.net c# 中生成条形码,使用位图对象将图像保存为 jpeg(还检查了更改图像扩展名 gif 和 dpi)。但问题是当我们打印条形码时,条形码质量不好(它显示褪色打印)。虽然打印机“Zebra GK420”质量不错。我在谷歌上做了一些研发,并使用了一些演示 dll 来制作条形码,但条形码质量问题仍然存在。这里是代码sn -p和打印输出文件;
Bitmap objBmpImage = new Bitmap(192, 96);
Font CR10BP = new Font("Courier New", 10, FontStyle.Bold, GraphicsUnit.Pixel);
Font TR10NP = new Font("Times New Roman", 10, FontStyle.Regular, GraphicsUnit.Pixel);
Font ID12NP = new Font("IDAutomationHC39M", 12, FontStyle.Regular, GraphicsUnit.Point);
Graphics objGraphics = Graphics.FromImage(objBmpImage);
objGraphics.Clear(Color.White);
objGraphics.DrawString(line1, TR10NP, new SolidBrush(Color.Black), 10, 2);
objGraphics.DrawString(line2, TR10NP, new SolidBrush(Color.Black), 10, 12);
objGraphics.DrawString(line3, TR10NP, new SolidBrush(Color.Black), 10, 22);
objGraphics.TextRenderingHint = TextRenderingHint.SingleBitPerPixel;
objGraphics.DrawString(line4, ID12NP, new SolidBrush(Color.Black), 10, 36);
objGraphics.Flush();
return objBmpImage;
【问题讨论】:
-
试试 BMP 或 PNG,gif 和 jpeg 是有损格式。另外,尝试一种非自动化的方法来创建和打印条形码,以确认它不是打印机设置/打印方法等。
-
我一直认为 Zebra 打印机接受条形码的 ASCII 字符串并自己生成条形码图像。
-
@GeorgeDuckett:我不认为 GIF 是有损的(除非你需要超过 256 个调色板)。尽管您正在撰写有关 jpeg 的文章,但这肯定会在图像中引入伪影。
-
@Chris:你可能就在那儿。 GIF 仅在颜色方面是有损的,因此不应影响结果,因为只有 2 种颜色。
-
@ChrisBD:您可以打印 ascii,也可以给它一个要打印的图像。我自己用过后一种方法。