קרא ברקוד מתמונה באמצעות Java

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

הנושאים הבאים יכוסו במאמר זה:

מה זה ברקוד

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

Java API לקריאת ברקוד מתמונה

על מנת לקרוא את הברקודים מתמונות בתוך יישומי Java, נשתמש ב-Aspose.BarCode for Java. זהו API עשיר בתכונות המאפשר לך ליצור, לסרוק ולקרוא מגוון רחב של סמליות ברקוד. המחלקה BarCodeReader של ה-API מאפשרת קריאת הברקודים. השיטה readBarCodes() של מחלקה זו מחזירה מערך של ברקודים מוכרים. ה-API מאפשר לקרוא ברקודים של DecodeType שצוין. המחלקה BarCodeResult של ה-API מאחסנת את נתוני הברקוד המוכרים כגון סוג ברקוד, טקסט קוד, אזור ופרמטרים אחרים.

אנא הורד את ה-JAR של ה-API או הוסף את תצורת pom.xml הבאה ביישום Java מבוסס Maven.

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>http://repository.aspose.com/repo/</url>
</repository>
<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-barcode</artifactId>
    <version>22.5</version>
</dependency>

קרא ברקוד מתמונה ב-Java

אנו יכולים לקרוא ברקודים מתמונה על ידי ביצוע השלבים המפורטים להלן:

  • ראשית, טען תמונה באמצעות המחלקה BarCodeReader.
  • קבל תוצאות זיהוי באובייקט המחלקה BarCodeResult באמצעות שיטת readBarCodes() .
  • לבסוף, בצע לולאה בין התוצאות והצג את סוג הברקוד והטקסט.

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

// דוגמה זו מדגימה כיצד לקרוא ברקוד מתמונה.
// הנתיב לספריית התמונות
String dataDir = "C:\\Files\\BarCode\\";

// אתחול קורא ברקוד
BarCodeReader reader = new BarCodeReader(dataDir + "CodeText.jpg");

// קרא ברקוד והצג תוצאות
for (BarCodeResult result : reader.readBarCodes()) {
  System.out.println("CodeText: " + result.getCodeText());
  System.out.println("Symbology type: " + result.getCodeType());
}
קרא ברקוד מתמונה.

קרא ברקוד מתמונה ב-Java.

זיהוי ברקוד מסוג ספציפי ב-Java

אנו יכולים לקרוא ברקוד מסוג מסוים מתמונה על ידי ביצוע השלבים המפורטים להלן:

  • ראשית, קרא נתוני מאגר של קובץ תמונה באמצעות שיטת ImageIO.read() .
  • לאחר מכן, צור מופע של המחלקה BarCodeReader עם תמונה מאוחסנת וסוג Decode.
  • לאחר מכן, הגדר סוג פענוח ברקוד כדי לקרוא את הברקוד מסוג מסוים, כגון CODE39STANDARD.
  • לאחר מכן, קבל תוצאות זיהוי באובייקט המחלקה BarCodeResult באמצעות שיטת readBarCodes() .
  • לבסוף, בצע לולאה בין התוצאות והצג את סוג הברקוד והטקסט.

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

// דוגמה זו מדגימה כיצד לקרוא ברקוד מסוג פיענוח ספציפי מתמונה.
// הנתיב לספריית התמונות
String dataDir = "C:\\Files\\BarCode\\";

// קבל תמונה מפוצצת
BufferedImage img = ImageIO.read(new File(dataDir + "CODE_39_STANDARD.jpg"));

// אתחול קורא ברקוד
BarCodeReader reader = new BarCodeReader(img, DecodeType.CODE_39_STANDARD);

// קרא ברקוד מסוג Code39Extended
for (BarCodeResult result : reader.readBarCodes()) {
  System.out.println("CodeText: " + result.getCodeText());
  System.out.println("Symbology type: " + result.getCodeType());
}
זיהוי ברקוד מסוג ספציפי.

זיהוי ברקוד מסוג מסוים ב-Java.

קרא ברקודים מרובים מתמונה ב-Java

אנו יכולים גם לקרוא את כל הברקודים הזמינים מתמונה על ידי ביצוע השלבים המפורטים להלן:

  • ראשית, טען תמונה באמצעות המחלקה BarCodeReader.
  • לאחר מכן, הגדר סוג פענוח ברקוד בתור ALLSUPPORTEDTYPES.
  • לאחר מכן, קבל תוצאות זיהוי באובייקט המחלקה BarCodeResult באמצעות שיטת readBarCodes() .
  • לבסוף, בצע לולאה בין התוצאות והצג את סוג הברקוד והטקסט.

דוגמת הקוד הבאה מראה כיצד לקרוא ברקודים מרובים מתמונה באמצעות Java.

// דוגמה זו מדגימה כיצד לקרוא ברקודים מרובים מתמונה.
// הנתיב לספריית התמונות
String dataDir = "C:\\Files\\BarCode\\";

// אתחול קורא ברקוד
BarCodeReader reader = new BarCodeReader(dataDir + "MultipleBarcodes.png", DecodeType.ALL_SUPPORTED_TYPES);

// קרא את כל סוגי הברקוד הזמינים בתמונת הקלט
for (BarCodeResult result : reader.readBarCodes()) {
  System.out.println("CodeText: " + result.getCodeText());
  System.out.println("Symbology type: " + result.getCodeType());
  System.out.println("-------------------------");
}
קרא מספר ברקודים מתוך תמונה.

קרא ברקודים מרובים מתמונה.

קבל קואורדינטות X ו-Y של ברקוד באמצעות Java

אנו יכולים לקרוא את קואורדינטות ה-X וה-Y של הברקוד שזוהה מתמונה על ידי ביצוע השלבים המפורטים להלן:

  • ראשית, טען תמונה באמצעות המחלקה BarCodeReader.
  • לאחר מכן, קבל תוצאות זיהוי באובייקט המחלקה BarCodeResult באמצעות שיטת readBarCodes() .
  • לאחר מכן, בצע לולאה בין התוצאות ובדוק אם getRegion() אינו null.
  • לאחר מכן, קבל את מערך הנקודות התוחם את אזור הברקוד באמצעות ה-getPoints().
  • לבסוף, הצג את נקודות ה-X וה-Y של הברקוד.

דוגמת הקוד הבאה מראה כיצד לקבל את נקודות הקואורדינטות X ו-Y של ברקוד מתמונה באמצעות Java.

// דוגמה זו מדגימה כיצד לקרוא נקודת X ו-Y אזור של ברקודים מתמונה.
// הנתיב לספריית התמונות
String dataDir = "C:\\Files\\BarCode\\";

// אתחול קורא ברקוד
BarCodeReader reader = new BarCodeReader(dataDir + "Code39Std.png", DecodeType.ALL_SUPPORTED_TYPES);

// קרא ברקוד
for (BarCodeResult result : reader.readBarCodes()) {
  if (result.getRegion() != null) {
    // הצג קואורדינטות x ו-y של כל הברקודים שזוהו
    Point[] point = result.getRegion().getPoints();
    System.out.println("Top left coordinates: X = " + point[0].x + ", Y = " + point[0].y);
    System.out.println("Bottom left coordinates: X = " + point[1].x + ", Y = " + point[1].y);
    System.out.println("Bottom right coordinates: X = " + point[2].x + ", Y = " + point[2].y);
    System.out.println("Top right coordinates: X = " + point[3].x + ", Y = " + point[3].y);
  }
}
קבל קואורדינטות X ו-Y של ברקוד.

קבל קואורדינטות X ו-Y של ברקוד מתמונה.

קרא ברקוד מאזור ספציפי של תמונה ב-Java

אנו יכולים לקרוא ברקוד מאזור מסוים או מאזור בתמונה על ידי ביצוע השלבים המפורטים להלן:

  • ראשית, קרא נתוני מאגר של קובץ תמונה באמצעות שיטת ImageIO.read() .
  • לאחר מכן, צור מופע של המחלקה BarCodeReader. זה לוקח תמונה מאוחסנת, אזור מלבן וסוג פענוח כארגומנטים.
  • לאחר מכן, קבל תוצאות זיהוי באובייקט המחלקה BarCodeResult באמצעות שיטת readBarCodes() .
  • לבסוף, בצע לולאה בין התוצאות והצג את סוג הברקוד והטקסט.

דוגמת הקוד הבאה מראה כיצד לקרוא ברקוד מאזור מסוים בתמונה באמצעות Java.

// דוגמה זו מדגימה כיצד לקרוא ברקוד מאזור ספציפי בתמונה.
// הנתיב לספריית התמונות
String dataDir = "C:\\Files\\BarCode\\";

// קבל BufferedImage
java.awt.image.BufferedImage img = javax.imageio.ImageIO.read(new java.io.File(dataDir + "specificRegion.png"));

// צור מופע של מחלקה BarCodeReader
// וציין אזור לחפש את הברקוד
BarCodeReader reader = new BarCodeReader(img, new Rectangle(0, 0, 700, 100), DecodeType.ALL_SUPPORTED_TYPES);

// קרא את כל הברקודים באזור המסופק
for (BarCodeResult result : reader.readBarCodes()) {
  System.out.println("CodeText: " + result.getCodeText());
  System.out.println("Symbology type: " + result.getCodeType());
}
קרא ברקוד מאזור ספציפי של תמונה.

קרא ברקודים מאזור מסוים של תמונה ב-Java.

קבל רישיון חינם

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

סיכום

במאמר זה למדנו כיצד:

  • טען תמונת ברקוד באופן פרוגרמטי;
  • לזהות ברקודים מסוגים שונים מתמונה;
  • קרא קואורדינטות ברקוד ב-Java;
  • לזהות ולקרוא ברקודים מרובים מתמונה אחת;
  • לזהות ולקרוא ברקודים מאזור מסוים בתמונה.

חוץ מזה, אתה יכול ללמוד עוד על Aspose.BarCode עבור Java API באמצעות תיעוד. בכל מקרה של אי בהירות, אנא אל תהסס לפנות אלינו בפורום.

ראה גם