我正在开发一个使用ASP. but /c#的条形码生成web应用程序,我想知道是否使用条形码库或条形码字体就足够了。我遇到过一些示例,但当使用条形码字体时,我发现每个用于生成barcode.And的代码前面都有一个星号(*),我找不到任何免费的条形码库。我想生成代码39或93。请帮我决定
发布于 2012-03-14 17:38:07
试试jquery-barcode
这是一个用来生成条形码的javascript库。请查看此question以了解其他替代方案。
发布于 2014-10-18 03:12:44
这是我正在使用的一个扩展方法,它不需要你安装字体:
public static Image GetBarCode(this string data, int fontSizeEm)
        {
            data = "*" + data + "*";
            Image img = null;
            Graphics drawing = null;
            try
            {
                using (var pfc = new PrivateFontCollection())
                {
                    pfc.AddFontFile(@"{{PATH TO YOUR FONT FILE}}");
                    using (var myfont = new Font(pfc.Families[0], fontSizeEm))
                    {
                        img = new Bitmap(1, 1);
                        drawing = Graphics.FromImage(img);
                        var textSize = drawing.MeasureString(data, myfont);
                        img.Dispose();
                        drawing.Dispose();
                        img = new Bitmap((int) textSize.Width, (int) textSize.Height);
                        drawing = Graphics.FromImage(img);
                        drawing.DrawString(data, myfont, new SolidBrush(Color.Black), 0, 0);
                    }
                    drawing.Save();
                }
                return img;
            }
            catch
            {
                //Handle exception
                return null;
            }
            finally
            {
                if(drawing!= null)
                    drawing.Dispose();
            }
        }发布于 2014-10-18 04:30:10
根据我的经验,通过矩形等图形元素生成条形码的库远远优于条形码字体。原因:
有很多免费的条形码图像库。如果你没有找到,那你看起来就不是很好。
9个条形码中的3个需要在代码的开始和结尾处设置保护条,以便扫描仪知道代码的开始和结束位置。当打印代码3/ 9的图例时,这些保护条传统上显示为星号。这些星号仅供阅读图例的人使用,它们不是代码的一部分,事实上,星号不是由9个字符组成的合法代码3。如果移除护栏,扫描仪将无法读取条形码。
https://stackoverflow.com/questions/9699191
复制相似问题