במאמר זה אדגים כיצד ליצור ברקודים באופן תוכנתי באמצעות C++. תלמד גם כיצד ליישם סורק ברקוד או קורא בתוך יישומי C++ שלך.

ליצור ברקוד ב-C++

ברקודים משמשים לייצוג חזותי של הנתונים בצורה הניתנת לקריאה במכונה. הטכנולוגיה האמורה הוכחה כמועילה במיוחד במערכות התשלום האוטומטיות הפרוסות בחנויות ובסופרמרקטים. כמעט כל מוצר בשוק בימינו מכיל ברקוד. הפופולריות הנרחבת הזו של הברקוד הרחיבה את מקרי השימוש שלו בתחומים שונים. תוך כדי מעקב אחר חשיבות הברקודים, לפני מספר שנים השיקה Aspose מחולל ברקוד וקורא API לפלטפורמות שונות. מאמר זה נועד להציג כיצד ליישם את מחולל הברקוד והקורא בתוך יישומי C++ כדי ליצור ולקרוא ברקודים באופן דינמי.

C++ מחולל ברקוד וממשק API לקורא

Aspose.BarCode for C++ הוא API עשיר בתכונות C++ להפקה וקריאה של מספר רב של ברקודים 1D ו 2D. זה מאפשר לך ליצור, להתאים אישית ולייצא את הברקודים לתמונות באיכות גבוהה. אתה יכול להוריד את קבצי הספרייה מהסעיף הורדות. החבילה להורדה מכילה גם אפליקציית C++ הדגמה עבורך.

להלן הרשימה של סמליות ברקוד שאתה יכול ליצור באמצעות Aspose.BarCode עבור C++:

  • קוד128
  • תקן Code39
  • Code39 מורחב
  • תקן Code93
  • Code93 מורחב
  • קוד11
  • קודבר
  • BooklandEAN
  • EAN13
  • EAN8
  • EAN128
  • Interleaved2of5
  • Standard2of5
  • MSI
  • Postnet
  • כוכב לכת
  • UPCA
  • UPCE
  • EAN14(SCC14)
  • SSCC18
  • ITF14
  • תוסף ברקוד
  • Pdf417
  • QR
  • מטריצת נתונים
  • מטריקס 2 מתוך 5
  • PZN (Pharma Zentral Nummer, ברקוד Pharmazentralnummer)
  • Deutsche Post Identcode
  • אצטקי
  • אוסטרליה פוסט

צור ברקוד באמצעות C++

יצירת ברקוד באמצעות Aspose.BarCode יכולה להתבצע בתוך כמה שורות קוד. להלן השלבים לביצוע פעולה זו.

דוגמת הקוד הבאה מראה כיצד ליצור ברקוד באמצעות C++.

const System::String codeText = u"1234567";
const System::String fileName = u"code39_barcode.jpg";
// צור מחולל ברקוד
System::SharedPtr<BarcodeGenerator> barcodeGenerator = System::MakeObject<BarcodeGenerator>(EncodeTypes::Code39Standard, codeText);
barcodeGenerator->get_Parameters()->set_Resolution(300);
// צור ברקוד ושמור כתמונה
barcodeGenerator->Save(fileName);

להלן הברקוד שיצרנו באמצעות הקוד לעיל.

צור ברקוד דו-ממדי (QR או אחר) באמצעות C++

בדוגמה הקודמת, יצרנו ברקוד חד מימדי. כעת ניצור ברקוד דו מימדי כגון קוד QR. להלן השלבים ליצירת ברקוד QR.

דוגמת הקוד הבאה מראה כיצד ליצור ברקוד QR באמצעות C++.

const System::String codeText = u"1234567";
const System::String fileName = u"QR_Code.jpg";
// צור מחולל ברקוד
System::SharedPtr<BarcodeGenerator> barcodeGenerator = System::MakeObject<BarcodeGenerator>(EncodeTypes::QR, codeText);
barcodeGenerator->get_Parameters()->set_Resolution(300);
// צור ברקוד ושמור כתמונה
barcodeGenerator->Save(fileName);

קוד ה-QR הבא יופק באמצעות הקוד שלמעלה.

צור ברקודים מותאמים אישית באמצעות C++

ניתן גם להתאים אישית את מראה הברקוד. לדוגמה, אתה יכול להגדיר את צבע החזית, צבע הרקע, הגודל, סגנון הגבול וכו’. הבאות אכלו את השלבים להתאמה אישית של הברקודים באמצעות Aspose.BarCode עבור C++.

  • צור ואתחל את האובייקט של המחלקה BarcodeGenerator.
  • גש לפרמטרים של ברקוד באמצעות שיטות BarcodeGenerator->getParameters().
  • הגדר את הפרמטרים הרצויים.
  • צור את הברקוד ושמור אותו כתמונה.

דוגמת הקוד הבאה מראה כיצד ליצור ברקוד מותאם אישית באמצעות C++.

System::SharedPtr<BarcodeGenerator> barcodeGenerator = [&] { auto tmp_0 = System::MakeObject<BarcodeGenerator>(EncodeTypes::Aztec, System::String(u"1234567890"));
// להגדיר סגנון רחב יותר
tmp_0->get_Parameters()->get_Border()->set_DashStyle(Aspose::BarCode::BorderDashStyle::Solid);
// להגדיר רוחב
tmp_0->get_Parameters()->get_Border()->get_Width()->set_Millimeters(1.0f);
// להגדיר נראות גבול
tmp_0->get_Parameters()->get_Border()->set_Visible(true);
// הגדר צבע רקע
tmp_0->get_Parameters()->set_BackColor(System::Drawing::Color::get_Black());
// הגדר את צבע הברקוד
tmp_0->get_Parameters()->get_Barcode()->set_ForeColor(System::Drawing::Color::get_Orange());
// הגדר צבע גבול
tmp_0->get_Parameters()->get_Border()->set_Color(System::Drawing::Color::get_Black());
// הגדר צבע טקסט
tmp_0->get_Parameters()->get_Barcode()->get_CodeTextParameters()->set_Color(System::Drawing::Color::get_Orange());
// להגדיר רזולוציית תמונה
tmp_0->get_Parameters()->set_Resolution(400);
return tmp_0; }();	
 
barcodeGenerator->Save(System::String(u"custom_barcode.jpg"));

להלן הברקוד האצטקי המותאם שיצרנו.

צור ברקודים עם כיתוב באמצעות C++

ברקודים עשויים להכיל גם את הכיתוב מתחת או מעל הברקוד. אתה יכול להגדיר את הטקסט של הכיתוב וכן את הנראות שלו בתמונת הברקוד. דוגמת הקוד הבאה מראה כיצד ליצור ברקוד עם הכיתובים באמצעות C++.

System::SharedPtr<BarcodeGenerator> generator = [&] { auto tmp_0 = System::MakeObject<BarcodeGenerator>(EncodeTypes::Code39Standard, System::String(u"1234567890"));
// הגדר את הכיתוב למעלה
tmp_0->get_Parameters()->get_CaptionAbove()->set_Text(u"Caption Above");
// להגדיר נראות
tmp_0->get_Parameters()->get_CaptionAbove()->set_Visible(true);
// הגדר את הכיתוב למטה
tmp_0->get_Parameters()->get_CaptionBelow()->set_Text(u"Caption Below");
// להגדיר נראות
tmp_0->get_Parameters()->get_CaptionBelow()->set_Visible(true);
// להגדיר רזולוציה
tmp_0->get_Parameters()->set_Resolution(300);
return tmp_0; }();
generator->Save(System::String(u"barcode_caption.jpg"));

להלן ברקוד עם הכיתובים למעלה ולמטה.

סרוק וקרא ברקודים באמצעות C++

כעת נראה כיצד לסרוק ולקרוא את הברקודים באמצעות Aspose.BarCode עבור C++. להלן השלבים לביצוע תכונה זו.

  • צור מופע של המחלקה BarCodeReader.
  • אתחול מופע BarCodeReader עם קובץ התמונה של הברקוד והסמליות שלו.
  • השתמש בשיטת BarCodeReader->Read() כדי לאחזר את הטקסט והסוג של הברקוד.

דוגמת הקוד הבאה מראה כיצד לסרוק ולקרוא ברקוד באמצעות C++.

// צור מופע של מחלקה BarcodeGenerator 
System::SharedPtr<BarCodeReader> reader = System::MakeObject<BarCodeReader>(u"Code128.png", DecodeType::Code128);
while (reader->Read())
{
	// הצג טקסט קוד וסוג סימבולוגיה
	System::Console::WriteLine(System::String(u"CodeText: ") + reader->GetCodeText());
	System::Console::Write(System::String(u"Symbology Type: ") + reader->GetCodeType());
}
reader->Close();

קרא ברקודים עם סימבולוגיות מרובות באמצעות C++

רוב הזמן, תמונה מכילה רק סמל ברקוד בודד. עם זאת, במקרים מסוימים, התמונה עשויה להכיל ברקודים של מספר סימבוליות בו-זמנית. במקרים כאלה, תוכל לספק רשימה של סמליות הברקוד שיש לסרוק ולקרוא.

דוגמת הקוד הבאה מראה כיצד לסרוק תמונה בעלת סימבולוגיות ברקוד מרובות באמצעות C++.

// הגדר סמלי ברקוד
System::ArrayPtr<System::SharedPtr<BaseDecodeType>> objArray = System::MakeArray<System::SharedPtr<Aspose::BarCode::BarCodeRecognition::BaseDecodeType>>({ DecodeType::Code39Standard, DecodeType::Pdf417 });

// אתחול בלולאה את שיטת BarCodeReader, Call Read() והצג את סוג הקוד והסמליות
System::SharedPtr<BarCodeReader> reader = System::MakeObject<BarCodeReader>(u"RecognizingMultipleSymbologies.png", objArray);
while (reader->Read())
{
	System::Console::WriteLine(System::String(u"Codetext: ") + reader->GetCodeText());
	System::Console::WriteLine(System::String(u"Symbology type: ") + reader->GetCodeType());
}
reader->Close();

סיכום

במאמר זה, למדת כיצד ליצור ברקודים עם סימבוליות שונות באמצעות C++. בנוסף, נדון גם הליך הסריקה והקריאת ברקודים יחד עם דוגמאות קוד C++. אתה יכול לחקור עוד על ה-API באמצעות תיעוד.

ראה גם