当前位置: 代码迷 >> ASP.NET >> C# 二维码 方案 各抒己见,该怎么解决
  详细解决方案

C# 二维码 方案 各抒己见,该怎么解决

热度:7953   发布时间:2013-02-25 00:00:00.0
C# 二维码 方案 各抒己见
现公司使用的Aspose.BarCode.dll这个类库生成条形码。进行传真匹配。识别率能达到70%
近期需提高识别率,所以想通过使用二维码来进行。

在网上查找了很多示例,Aspose.BarCode.dll也是可以生成二维码,但是这个类库是需要续费的。

看了下google用JAVA做的开源zxing 但是,没有找到具体怎么在C#中如何使用的类库。与相关的示例。

也在CSDN下载了“C#二维码QRCode2”这个示例程序。这个不错,是别人自己写的。

生成二维码是比较容易的。但是,读取的时候我们是通过客户传回来的传真文件。文本格式“.tif”类似图片。
是这个传真页面,所以的先找到页面的二维码坐标之类的东西。。

各位高手,有没有类似的示例。或方案!提供下给小弟。万分感谢!

------解决方案--------------------------------------------------------
NickLee.Web.UI中的QRCode读写,写比较好,读还是建议用硬件设备
中文问题Ansi->Unicode即可
参考地址:www.cnblogs.com/mail-ricklee
org.zxing,写比较不好,读很好,可以参考
参考地址:http://code.google.com/p/zxing/
------解决方案--------------------------------------------------------
dll下载222.175.220.26:88/zxing.rar
使用
C# code
string content = "tel:汉ooj字";        Hashtable h = new System.Collections.Hashtable();        h.Add("UTF-8", "UTF-8");        ByteMatrix byteMatrix = new MultiFormatWriter().encode(content, BarcodeFormat.QR_CODE, 200, 200, h);        Bitmap bitmap = toBitmap(byteMatrix);        MemoryStream ms = new MemoryStream();        bitmap.Save("c:\\1\\a.jpg", ImageFormat.Jpeg);        Image img = Image.FromFile("c:\\1\\a.jpg");        Bitmap bmap;        try        {            bmap = new Bitmap(img);        }        catch (System.IO.IOException ioe)        {            return;        }        if (bmap == null)        {            return;        }        LuminanceSource source = new RGBLuminanceSource(bmap, bmap.Width, bmap.Height);        com.google.zxing.BinaryBitmap bitmapdc = new com.google.zxing.BinaryBitmap(new HybridBinarizer(source));        Result result;        try        {            result = new MultiFormatReader().decode(bitmapdc);        }        catch (ReaderException re)        {            return;        }        Response.Write(result);
------解决方案--------------------------------------------------------
你获取TIF就知道点阵信息.如果你的发送传真位置基本固定.如果位置不固定.你可以考虑使用楼上贴的QR码 这个有定位符..这3个大防快不难找把. 然后按巨型获取出来信息 3个大方块的位置确定了 获取个矩形也不难把.然后给你的DLL识别就好了.