栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

Dynamsoft Barcode Reader 9.2 for C++

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Dynamsoft Barcode Reader 9.2 for C++

User Guide for C++ Language
In this guide, you will learn step by step on how to build a barcode reading application with Dynamsoft Barcode Reader SDK using C++ language.


Requirements
Operating System: 
Windows 7, 8, 10, 11, 2003, 2008, 2008 R2, 2012, 2016, 2019, 2022
Linux x64: Ubuntu 14.04.4+ LTS, Debian 8+, etc
Linux arm 32bit
Linux arm 64bit
MacOS 64bit: 10.12+ (not included in the trial package, contact us to get the SDK)
Developing Tool 
Visual Studio 2008 or above
G++ 5.4+


Installation
If you haven’t downloaded the SDK yet, download the C/C++ Package now from Dynamsoft website and unpack the package into the directory of your choice.
For this tutorial, we unpack it to [INSTALLATION FOLDER], change it to your unpacking path for the following content.
Build Your First Application
Let’s start by creating a console application which demonstrates how to use the minimum code to read barcodes from an image file.
You can download the entire source code and compiled program from Here.
Create a New Project
For Windows
Open Visual Studio. Go to File > New > Project, create a new Empty Project and set Project name as DBRCPPSample.
Add a new source file named DBRCPPSample.cpp into the project.
For Linux/ARM/Mac
Create a new source file named DBRCPPSample.cpp and place it into the folder [INSTALLATION FOLDER]/Samples.
Include the Library
Add headers and libs in DBRCPPSample.cpp.
 #include
 #include "[INSTALLATION FOLDER]/Include/DynamsoftBarcodeReader.h"
 using namespace std;
 using namespace dynamsoft::dbr;
 #if defined(_WIN64) || defined(_WIN32)
     #ifdef _WIN64
         #pragma comment(lib, "[INSTALLATION FOLDER]/Lib/Windows/x64/DBRx64.lib")
     #else
         #pragma comment(lib, "[INSTALLATION FOLDER]/Lib/Windows/x86/DBRx86.lib")
     #endif
 #endif


Initialize a Barcode Reader Instance
Initialize the license key.
 char errorBuf[512];
 dynamsoft::dbr::CBarcodeReader::InitLicense("", errorBuf, 512);
Please replace with a valid DBR licensekey. There are two ways to obtain one:
Search InitLicense and find the license from [INSTALLATION FOLDER]/Samples/BarcodeReaderDemo/BarcodeReaderDemo.cpp.
Request a trial license from Customer Portal.
Create an instance of Dynamsoft Barcode Reader.
 CBarcodeReader dbr;
Configure the Barcode Scanning Behavior
Set barcode format and count to read.
 char sError[512];
 PublicRuntimeSettings runtimeSettings;
 dbr.GetRuntimeSettings(&runtimeSettings);
 runtimeSettings.barcodeFormatIds = BF_ALL; 
 runtimeSettings.barcodeFormatIds_2 = BF2_POSTALCODE | BF2_DOTCODE; 
 runtimeSettings.expectedBarcodesCount = 32;
 dbr.UpdateRuntimeSettings(&runtimeSettings, sError, 512);
The barcode formats to enable is highly application-specific. We recommend that you only enable the barcode formats your application requires. Check out Barcode Format Enumeration for full supported barcode formats.
If you know exactly the barcode count you want to read, specify expectedBarcodesCount to speed up the process and improve the accuracy.
Decode and Output Results
Decode barcodes from an image file.
 int iErrorCode = -1;
 iErrorCode = dbr.DecodeFile("[INSTALLATION FOLDER]/Images/AllSupportedBarcodeTypes.png", "");
 if(iErrorCode != DBR_OK)
     cout << dbr.GetErrorString(iErrorCode) << endl;
For the error handling mechanism, the SDK returns Error Code for each function and provides a function GetErrorString to get the readable message. You should add codes for error handling based on your needs. Check out Error Code for full supported error codes.
Get and output barcode results.
 TextResultArray* pResult = NULL;
 dbr.GetAllTextResults(&pResult);
 if (pResult != NULL && pResult->resultsCount > 0)
 {
     cout << pResult->resultsCount <<" total barcode(s) found."<< endl;
     for (int iIndex = 0; iIndex < pResult->resultsCount; iIndex++)
     {
         cout << "Result " << iIndex + 1 << endl;
         cout << "Barcode Format: " << pResult->results[iIndex]->barcodeFormatString << endl;
         cout << "Barcode Text: " << pResult->results[iIndex]->barcodeText << endl;
     }
 }
 cin.ignore();
The SDK returns multiple barcode information, including barcode count, barcode format, barcode text, location, barcode raw data, etc. Check out TextResult for full supported result data.
Release Allocated Memory
Release the allocated memory for the barcode results.
 if(pResult != NULL)           
     CBarcodeReader::FreeTextResults(&pResult);

 

 

Note:
Please change all [INSTALLATION FOLDER] in above code snippet to your unpacking path.
Build and Run the Project
For Windows
In Visual Studio, set the solution to build as Release|x64.
Build the project to generate program DBRCPPSample.exe.
Copy ALL *.dll files under [INSTALLATION FOLDER]LibWindowsx64 to the same folder as the DBRCPPSample.exe.
Run the program DBRCPPSample.exe.
The SDK supports both x86 and x64, please set the platform based on your needs.
For Linux/ARM/Mac
Open a terminal and change to the target directory where DBRCPPSample.cpp located in. Build the sample:
 g++ -o DBRCPPSample DBRCPPSample.cpp -lDynamsoftBarcodeReader -L ../Lib/Linux -Wl,-rpath=../Lib/Linux -std=c++11
Please replace Linux to ARM32 or ARM64 based on your platform.
Run the program DBRCPPSample.
 ./DBRCPPSample

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/960430.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号