轉帖|使用教程|編輯:黃竹雯|2016-07-15 15:10:39.000|閱讀 3197 次
概述:LeadTools為.NET(C# & VB.NET)、C/C++、Java和Web開發者提供了快速且精確度高的 OCR SDK技術。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關鏈接:
LeadTools為.NET(C# & VB.NET)、C/C++、Java和Web開發者提供了快速且精確度高的 OCR SDK技術。利用LeadTools高級OCR工具包,可以快速的開發健壯的、可擴展的、高性能識別的文檔處理應用程序,這些應用程序可提取出掃描文件中的文本,將圖像轉化為文本搜索格式,如PDF、PDF/A、DOC、DOCX、XML、XPS等。LeadTools廣泛支持40余種字符集,編程者通過提供多語言的解決方案擴展用戶群,包括英語、西班牙語、法語、德語、日語、中文、阿拉伯語等。
本文將為大家介紹:
1 選擇您將要使用的引擎類型,并創建一個接口實例。更多信息,可參考。
2 使用方法啟動OCR引擎。更多信息,可參考。
3 創建一個一頁或多頁的OCR文檔。更多信息,可參考。
4 手動或自動的在頁面上建立區域。(此步驟是可選的。一個頁面無論有沒有區域,都是可識別的。)更多信息,可參考。
5 可選。設置OCR引擎正在使用的語言(默認為英文)。更多信息,可參考。
6 可選。設置拼寫檢查語言(默認為英文)。更多信息,可參考。
7 可選。設置任意特殊的識別模塊選項。如果一個頁面內包括自動或手動創建的區域,這些選項是需要的。更多信息,可參考, and 。
8 識別。更多信息,可參考。
9 若需要,保存識別結果。結果可保存為一個文件或保存至內存。更多信息,可參考。
10 當結束時關閉OCR引擎。更多信息,可參考。
步驟4、5、6、7可以以任意順序執行,只要它們在OCR引擎啟動后、識別頁面前執行了即可。
下面為您提供了”使用OCR識別圖像中的中文“的示例代碼。為了運行此代碼,請點擊下載LeadTools全功能試用版。
安裝全功能試用版后,由于此應用程序要識別中文,因此在創建應用程序之,請點擊下載LeadTools OCR語言擴展包。
安裝完OCR語言擴展包,我們就可以開始創建“使用OCR識別中文”的應用程序了,我們將最終的識別結果保存為.docx格式。
1. 打開Visual Studio .NET。點擊 文件->新建->項目…。打開新建項目對話框后,在模板中選擇“Visual C#”,隨后選擇“Windows窗體應用程序”。在名稱欄中輸入項目名稱“SampleOcrChinese”,并使用“瀏覽”按鈕選擇您工程的存儲路徑,點擊“確定”。
2. 在“解決方案資源管理器”中,右擊“引用”,選擇“添加引用”。根據當前工程的 Framework 版本和生成目標平臺,選擇添加相應的LeadTools控件,例如工程中的版本為 Framework 4.0、生成目標平臺是 x86,則瀏覽選擇Leadtools For .NET文件夾” LEADTOOLS_INSTALLDIR\Bin\DotNet4\Win32”,選擇以下的DLL“:
點擊“確定”按鈕,將以上所有的DLL添加到應用程序中。
注意:添加Leadtools.Codecs.*.dll引用后,可使用BMP、JPG、CMP、TIF和FAX圖像文件格式。如果您想使用更多的文件格式,可添加相關文件格式的codec DLL至應用程序。
3. 拖拽5個button控件至Form1。Button的名稱默認為“button1,button2…”,根據以下表格修改相應的Text屬性:
Name | Text |
---|---|
button1 | 啟動OCR引擎 |
button2 | 添加頁面 |
button3 | 刪除頁面 |
button4 | 識別文檔(中文)并保存為Word |
button5 | 關閉OCR引擎 |
4. 將Form1切換至代碼視圖,將以下代碼添加至using 部分:
using Leadtools; using Leadtools.Codecs; using Leadtools.Forms; using Leadtools.Forms.DocumentWriters; using Leadtools.Forms.Ocr; using Leadtools.ImageProcessing; using Leadtools.WinForms;
5. 將以下私有變量添加至Form1類:
private IOcrEngine _ocrEngine; private IOcrDocument _ocrDocument;
6. 將以下代碼添加至Form1的構造函數:
InitializeComponent(); // 解鎖OCR功能,用您的密鑰替換此處 string MY_LICENSE_FILE = "d:\\temp\\TestLic.lic"; string MY_DEVELOPER_KEY = "xyz123abc"; RasterSupport.SetLicense(MY_LICENSE_FILE, MY_DEVELOPER_KEY); // 初始化OCR引擎 _ocrEngine = OcrEngineManager.CreateEngine(OcrEngineType.Professional, false);
7. 將以下代碼添加至button1(啟動OCR引擎)按鈕的Click句柄中,啟動OCR引擎,在此部分將識別的語言設置為中文簡體:
// 啟動OCR引擎 _ocrEngine.Startup(null, null, null, @"D:\LEADTOOLS 18\Bin\Common\OcrProfessionalRuntime"); // 創建文檔 _ocrDocument = _ocrEngine.DocumentManager.CreateDocument(); //將語言設置為中文簡體,中文繁體為"zh-Hant" _ocrEngine.LanguageManager.EnableLanguages(new string[] {"zh-Hans"}); MessageBox.Show("OCR引擎成功啟動");
8. 將以下代碼添加至button2(添加頁面)的Click句柄中,將單頁圖像文件添加至OCR文檔:
string fileName = Path.Combine(Application.StartupPath, @"..\..\Pic\chineseImage.bmp"); //將包含中文字符的文件添加至OCR文檔 IOcrPage page = _ocrDocument.Pages.AddPage(fileName, null); int pageCount = _ocrDocument.Pages.Count; // // 顯示此頁面的相關信息 string message = string.Format( "共{0}頁\n最后添加的頁面大小 = {1} * {2}\n分辨率 = {3} * {4}\n每個像素的位數 = {5}\n", pageCount, page.Width, page.Height, page.DpiX, page.DpiY, page.BitsPerPixel); MessageBox.Show(message);
9. 將以下代碼添加至button3(刪除頁面)的Click句柄,從OCR文檔中移走了所有頁面:
// 從OCR文檔中移除所有添加的頁面 _ocrDocument.Pages.Clear(); MessageBox.Show("所有頁面已被移除");
10. 將以下代碼添加至button4(識別文檔(中文)并保存為Word)的Click句柄,識別文檔中的中文字符,并將識別的結果保存為Word文檔:
// 識別所有頁面 // 注意,我們不需要調用AutoZone,引擎會檢查頁面是否被分區,若無,則會自動分區 _ocrDocument.Pages.Recognize(null); // 將結果保存為Word文檔 string wordFileName = Path.Combine(Application.StartupPath, @"..\..\Result\Result.docx"); _ocrDocument.Save(wordFileName, DocumentFormat.Docx, null); // 顯示我們剛剛保存的word文件 System.Diagnostics.Process.Start(wordFileName);
11. 將以下代碼添加至button5(關閉OCR引擎)按鈕的Click句柄,關閉OCR引擎:
// 釋放此文檔 _ocrDocument.Dispose(); // 關閉OCR引擎 _ocrEngine.Shutdown(); MessageBox.Show("OCR引擎關閉");
此段代碼會將最終的識別結果保存為PDF文件。可按照依照以下步驟:啟動OCR引擎->添加頁面->識別文檔(中文)并保存為Word->刪除頁面->關閉OCR引擎。
12. 編譯、運行程序。結果如下圖:
原圖像為:
運行程序識別過程的截圖如下:
DEMO下載:
文章轉自:葡萄城控件產品博客,//blog.gcpowertools.com.cn
如果你想體驗LeadTools OCR識別中文的效果,不妨查看并免費下載LeadTools試用版自己試試!
如需幫助,請聯系!
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn