原創(chuàng)|使用教程|編輯:郝浩|2013-08-16 11:02:05.000|閱讀 688 次
概述:如今,條形碼的使用已經(jīng)非常普遍,從零售商店到移動(dòng)設(shè)備,無(wú)不使用到條形碼。條碼圖像識(shí)別開(kāi)發(fā)包LEADTOOLS SDK的高層次的編程接口,使開(kāi)發(fā)人員只需幾行代碼便可識(shí)別和編寫(xiě)條形碼。接下來(lái),我們將利用LEADTOOLS SDK創(chuàng)建一個(gè)加載和讀取條形碼的簡(jiǎn)單應(yīng)用程序。
# 界面/圖表報(bào)表/文檔/IDE等千款熱門(mén)軟控件火熱銷(xiāo)售中 >>
如今,條形碼的使用已經(jīng)非常普遍,從零售商店到移動(dòng)設(shè)備,無(wú)不使用到條形碼。LEADTOOLS SDK支持讀寫(xiě)幾乎每種條形碼符號(hào)。條碼圖像識(shí)別開(kāi)發(fā)包LEADTOOLS SDK的高層次的編程接口,使開(kāi)發(fā)人員只需幾行代碼便可識(shí)別和編寫(xiě)條形碼。正是由于其豐富的條形碼樣式支持,文件清理,表單識(shí)別和處理,OCR,TWAIN 掃描等技術(shù),在基于圖像的條形碼應(yīng)用程序中,LEADTOOLS是不可或缺的。接下來(lái),我們將利用LEADTOOLS SDK創(chuàng)建一個(gè)加載和讀取條形碼的簡(jiǎn)單應(yīng)用程序。
準(zhǔn)備工作
使用條碼圖像識(shí)別開(kāi)發(fā)包LEADTOOLS SDK
首先,通過(guò)RasterCodecs對(duì)象加載圖像。這個(gè)類(lèi)負(fù)責(zé)處理所有文件I/O和圖像元數(shù)據(jù)的功能。你可能會(huì)注意到Leadtools.Codecs.Bmp.dll , Leadtools.Codecs.Tif.dll等個(gè)別編解碼器文件的引用。這些庫(kù)添加了對(duì)這些文件格式的支持,因此,如果你想要加載任何附加文件,你需要添加引用到相應(yīng)的編解碼器,否則你會(huì)獲取一個(gè) “Invalid File Format”錯(cuò)誤。
using (OpenFileDialog ofd = new OpenFileDialog()) { ofd.Filter = "TIFF|*.tif|JPEG|*.jpg|PNG|*.png|BMP|*.bmp|All Files|*.*"; if (ofd.ShowDialog() == DialogResult.OK) { using (RasterCodecs codecs = new RasterCodecs()) { // Load first page into the viewer rasterImageViewer1.Image = codecs.Load(ofd.FileName, 0, CodecsLoadByteOrder.BgrOrGray, 1, 1); } } }
接下來(lái),利用 BarcodeEngine 對(duì)象讀取條形碼。本實(shí)例使用了默認(rèn)的選項(xiàng)來(lái)讀取所有水平方向的條形碼,也有一些附加選項(xiàng)用于縮小搜索范圍,條形碼類(lèi)型和條形碼方向。
// Create a Barcode engine BarcodeEngine engine = new BarcodeEngine(); // Ignore errors in case there are corrupted ones on the image. engine.Reader.ErrorMode = BarcodeReaderErrorMode.IgnoreAll; // Read all barcodes with default options. BarcodeData[] barcodes = engine.Reader.ReadBarcodes(rasterImageViewer1.Image, LogicalRectangle.Empty, 0, null); // Print out the barcodes we found StringBuilder results = new StringBuilder(); results.AppendFormat("{0} barcodes found.\r\n\r\n", barcodes.Length); for (int i = 0; i < barcodes.Length; i++) { BarcodeData barcode = barcodes[i]; results.AppendFormat(" {0} - {1} - {2}\r\n", i + 1, barcode.Symbology, barcode.Value); }
運(yùn)行示例,圖像顯示在查看器中,并且所有檢測(cè)到的條形碼都列在下列文本框中,如下圖所示:
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@fc6vip.cn
文章轉(zhuǎn)載自:慧都控件網(wǎng)