Questo semplice esempio illustra come leggere Barcode utilizzando C++. Per sviluppare un lettore di codici a barre, il codice sorgente C++ viene utilizzato all’interno di qualsiasi applicazione supportata da C++ in MS Windows seguendo alcuni passaggi di codifica. Vedremo come possiamo leggere diversi tipi di codici a barre contemporaneamente da un singolo file senza dipendere da strumenti di terze parti o altre API.
Passaggi per leggere il codice a barre usando C++
- Aggiungi l’API Aspose.BarCode for C++ utilizzando il gestore di pacchetti NuGet nella tua applicazione
- Includi un riferimento a Aspose::BarCode e Aspose::BarCode::BarCodeRecognition namespace
- Aggiungi i riferimenti ai file di intestazione richiesti nella tua applicazione
- Utilizzare l’array BaseDecodeType per impostare i tipi di codici a barre desiderati da leggere dal file di origine
- Inizializza l’oggetto classe BarCodeReader per leggere i codici a barre dal file PNG
- Scorri le informazioni sul codice a barre estratte e visualizzale nella console
In C++ Barcode scanner l’applicazione può essere sviluppata aderendo ai passaggi sopra menzionati e poche righe di codice. In primo luogo, ti verrà richiesto di aggiungere il riferimento API utilizzando NugGet e includendo i file di intestazione richiesti. Nel passaggio successivo, imposterai i tipi di codici a barre desiderati per i quali sviluppare un lettore utilizzando l’enumeratore DecodeType. Utilizzando l’istanza della classe BarCodeReader, forniremo il percorso per il file PNG di origine con codici a barre diversi e array di tipi di codici a barre desiderati. Infine, analizzeremo le informazioni sul codice a barre lette e le visualizzeremo nella console.
Codice per leggere il codice a barre utilizzando Java
#pragma once | |
#include <system/primitive_types.h> | |
#include <system/object.h> | |
#include <system/string.h> | |
#include <system/shared_ptr.h> | |
#include <system/primitive_types.h> | |
#include <system/object.h> | |
#include <system/details/dispose_guard.h> | |
#include <system/console.h> | |
#include <system/collections/list.h> | |
#include <system/collections/ienumerator.h> | |
#include <system/array.h> | |
#include <cstdint> | |
#include <system/text/encoding.h> | |
#include <stdio.h> | |
#include <system/console.h> | |
#include <system/environment.h> | |
#include <Licensing/License.h> | |
#include <BarCodeRecognition/Recognition/RecognitionSession/DecodeTypes/SingleDecodeType.h> | |
#include <BarCodeRecognition/Recognition/RecognitionSession/BarcodeReader.h> | |
#include <BarCodeRecognition/Recognition/RecognitionSession/DecodeTypes/DecodeType.h> | |
#include <BarCodeRecognition/Recognition/RecognitionSession/DecodeTypes/BaseDecodeType.h> | |
#include <BarCodeRecognition/Recognition/RecognitionSession/BarcodeResults/BarCodeResult.h> | |
#include <BarCodeRecognition/Recognition/RecognitionSession/BarcodeResults/BarCodeResult.h> | |
using namespace System; | |
using namespace Aspose::BarCode; | |
using namespace Aspose::BarCode::BarCodeRecognition; | |
class BarcodeReader { | |
public: | |
static void ReadBarcode() | |
{ | |
// Set the license for Aspose.BarCode for C++ to create Barcode | |
SharedPtr<License> CreateBarcodeLicense = System::MakeObject<License>(); | |
CreateBarcodeLicense->SetLicense(u"Aspose.Barcode.NET.lic"); | |
// Set Barcode types for decoding | |
System::ArrayPtr<System::SharedPtr<BaseDecodeType>> barcodeTypes = System::MakeArray<System::SharedPtr<BaseDecodeType>> | |
({ DecodeType::Code39Standard, DecodeType::Pdf417, DecodeType::DataMatrix, DecodeType::QR, | |
DecodeType::Code39Extended, DecodeType::Code128, DecodeType::RM4SCC }); | |
System::SharedPtr <BarCodeReader> BarcodeReader = System::MakeObject<BarCodeReader>(u"multiple_codes.png", barcodeTypes); | |
System::Console::Write(u"ReadSimpleExample:"); | |
for (System::SharedPtr <BarCodeResult> codeResult : BarcodeReader->ReadBarCodes()) { | |
System::Console::WriteLine(System::String(u"Symbology type: ") + codeResult->get_CodeType()); | |
System::Console::WriteLine(System::String(u"Codetext: ") + codeResult->get_CodeText()); | |
} | |
} | |
}; |
Nell’esempio sopra, al fine di creare un lettore di codici a barre, è stata sviluppata un’applicazione basata su C++ utilizzando poche righe di codice di facile comprensione in grado di scansionare diversi tipi di codici a barre. In questa applicazione, ci siamo concentrati sullo sviluppo di un lettore di codici a barre per i tipi QR, Code 39 Standard, Pdf 417, Data Matrix, Code 128 e RM 4 SCC. Ma l’API supporta molti altri tipi di codici a barre che puoi esplorare nell’enumeratore DecodeType. Abbiamo utilizzato semplici chiamate API per sviluppare un’applicazione di lettura C++ Barcode.
In questo esempio, abbiamo esplorato che per sviluppare un’API basata su Barcode Scanner C++ e le sue rispettive funzionalità possono essere utilizzate. Se sei interessato a generare un codice QR, fai riferimento all’articolo su come Genera codice QR usando C++.