Jak opracować aplikację do skanowania kodów kreskowych przy użyciu Java SDK. Zaimplementuj funkcje skanowania QR w swoich aplikacjach internetowych, mobilnych i stacjonarnych.

Skaner kodów kreskowych

Zeskanuj kod kreskowy online | Skaner kodów QR

W tym artykule omówimy szczegóły, jak opracować skaner kodów kreskowych i aplikację do skanowania kodów QR za pomocą Java REST API. Rozumiemy, że w dzisiejszych szybko rozwijających się gospodarkach kody kreskowe są niezbędnym i opłacalnym rozwiązaniem dla sprzedawców i handlowców do przechowywania szczegółowych informacji o produktach. Przez lata okazały się one cennym i opłacalnym wyborem dla firm. Znacznie poprawiły wydajność i zmniejszyły koszty ogólne. Kody kreskowe są zarówno ekonomiczne, jak i niezawodne. Wśród innych korzyści płynących z używania kodów kreskowych poniżej wymieniono jeszcze kilka zalet ich stosowania

  • Kody kreskowe eliminują możliwość błędu ludzkiego
  • Korzystanie z systemu kodów kreskowych skraca czas szkolenia pracowników
  • Kody kreskowe są niezwykle wszechstronne i mogą być używane do każdego rodzaju niezbędnego gromadzenia danych
  • Umożliwiają precyzyjną kontrolę zapasów, a tym samym poprawiają kontrolę zapasów
  • Ponadto kody kreskowe dostarczają lepszych danych, tj. pojedynczy kod kreskowy może dostarczać szczegółowych informacji o inwentarzu i cenach

W odniesieniu do wszystkich takich funkcji Aspose.BarCode Cloud Java SDK umożliwia programistom Java tworzenie i skanowanie kodów kreskowych online przy użyciu języka Java. Podobnie jak inne nasze Cloud API, Aspose.BarCode Cloud Java SDK wymaga rejestracji konta w Cloud Dashboard. Jeśli już zarejestrowałeś konto, możesz nadal z niego korzystać. Gdy masz już gotowe konto, możesz korzystać z usług w chmurze za pośrednictwem AppKey i AppSID.

Możesz rozważyć użycie magazynu Aspose Cloud lub skorzystać z usług przechowywania w chmurze innych firm do przechowywania i pobierania plików.

Obsługiwane symbole kodów kreskowych

SDK obsługuje wiele symboli kodów kreskowych (ponad 60), takich jak EAN, UPC, Codabar, PDF417, QR, MicroQR, Postnet, Planet, RM4SCC itp. Masz również możliwość załadowania istniejących informacji o kodzie kreskowym i zapisania wyników w popularnym obrazie formaty takie jak JPEG, PNG, GIF, BMP, TIFF, EMF, WMF, SVG, EXIF i ICON. Pełną listę obsługiwanych symboli można znaleźć na stronie Aspose.BarCode Cloud Java SDK.

Wygeneruj kod kreskowy

SDK umożliwia tworzenie obrazów liniowych, 2D i pocztowych kodów kreskowych w wielu formatach. Możesz określić atrybuty obrazu kodu kreskowego, takie jak szerokość obrazu, wysokość, styl obramowania i format obrazu wyjściowego. Możesz również określić typ kodu kreskowego i atrybuty tekstu, takie jak położenie tekstu i style czcionek, zgodnie z wymaganiami aplikacji. Zapewnia również możliwość ustawiania wysokości pasków i obracania obrazów kodów kreskowych pod kątem.

Poniższy przykład pokazuje kroki tworzenia kodu kreskowego Code39Standard, umieszczonego na wyrównaniu strony góra-środek. Kolor tekstu jest określony jako granatowy, rozdzielczość pozioma i pionowa jest określona jako 200. BarColor jest określony jako pomarańczowy, kolor tła jest ustawiony jako srebrny, a format wyjściowy to format JPEG.

Zanim przejdziemy dalej, zalecamy odwiedzenie następującego łącza, ponieważ token JWT jest niezbędny podczas uzyskiwania dostępu do interfejsu API za pomocą polecenia cURL.

kędzior

curl -X PUT "https://api.aspose.cloud/v3.0/barcode/MySample.jpeg/generate?Type=Code39Standard&Text=BarCode%20processing&TextLocation=Above&TextAlignment=Center&TextColor=Navy&FontSizeMode=Auto&Resolution=200&ResolutionX=200&BackColor=silver&BarColor=Orange&BorderColor=Blue&format=jpeg" \
-H  "accept: application/json" \
-H  "authorization: Bearer <JWT Token>"

Adres URL żądania

https://api.aspose.cloud/v3.0/barcode/MySample.jpeg/generate?Type=Code39Standard&Text=BarCode%20processing&TextLocation=Above&TextAlignment=Center&TextColor=Navy&FontSizeMode=Auto&Resolution=200&ResolutionX=200&BackColor=silver&BarColor=Orange&BorderColor=Blue&format=jpeg

Jawa

ApiClient client = new ApiClient(
"App SID from https://dashboard.aspose.cloud/#/apps",
"App Key from https://dashboard.aspose.cloud/#/apps");
		        
com.aspose.barcode.cloud.api.BarcodeApi api = new com.aspose.barcode.cloud.api.BarcodeApi(client);
String name = "MySample.jpeg";
String type = com.aspose.barcode.cloud.model.EncodeBarcodeType.CODE39STANDARD.getValue();	
String text = "Barcode processing API"; // String | Text to encode.
String twoDDisplayText = null;
String textLocation = com.aspose.barcode.cloud.model.CodeLocation.ABOVE.getValue();
String textAlignment = com.aspose.barcode.cloud.model.TextAlignment.CENTER.getValue();
String textColor = "Navy";
String fontSizeMode = com.aspose.barcode.cloud.model.FontMode.AUTO.getValue();
int resolution = 200;
double resolutionX = 200;
double resolutionY = 200;
String barColor = "Orange";
String format = "JPEG";
		        
try {
com.aspose.barcode.cloud.model.ResultImageInfo result = api.putBarcodeGenerateFile(
    name, 
		type, 
		text, 
		twoDDisplayText, 
		textLocation, 
		textAlignment, 
		textColor, 
		fontSizeMode, 
		(double) resolution, 
		resolutionX, 
		resolutionY, 
		null, 
		null, 
		null, 
		null, 
		null, 
		null, 
		null, 
		null, 
		"Silver", 
		barColor, 
		"Blue",
		null, 
		null, 
		true, 
		null, 
		null, 
		null, 
		null, 
		null, 
		null, 
		null, 
		null, 
		null, 
		null,
		format);
		            
  System.out.println(result);
	} catch (ApiException e) {
  System.err.println("Exception when calling BarcodeApi#PutBarcodeGenerateFile");
	e.printStackTrace();
}
Internetowy skaner kodów kreskowych

Obraz 1: - Podgląd wynikowego kodu kreskowego.

Czytnik kodów kreskowych online

Skan QR

Obraz 2: Skaner kodów QR

Cloud API może również rozpoznawać informacje z istniejących kodów kreskowych. Masz możliwość określenia szczegółów typu kodu kreskowego w celu szybkiego wyszukiwania lub automatycznego określenia typu przez interfejs API. Możesz także określić szczegóły ChecksumValidation, DetectEncoding lub pozwolić interfejsowi API określić je w czasie wykonywania.

kędzior

curl -X POST "https://api.aspose.cloud/v3.0/barcode/recognize?Type=all&DetectEncoding=true" \
-H  "accept: application/json" \
-H  "authorization: Bearer <JWT Token>" \
-H  "Content-Type: multipart/form-data" \
-H  "x-aspose-client: Containerize.Swagger" -d {"image":{}}

Adres URL żądania

https://api.aspose.cloud/v3.0/barcode/recognize?Type=all&DetectEncoding=true

Jawa

// Aby uzyskać pełne przykłady i pliki danych, przejdź do https://github.com/aspose-barcode-cloud/aspose-barcode-cloud-java/

String type = null;
String checksumValidation = ChecksumValidation.OFF.toString();
Boolean detectEncoding = null;
String preset = PresetType.HIGHPERFORMANCE.toString();

Integer rectX = null;
Integer rectY = null;
Integer rectWidth = null;
Integer rectHeight = null;
Boolean stripFNC = null;
Integer timeout = null;
Integer medianSmoothingWindowSize = null;
Boolean allowMedianSmoothing = null;
Boolean allowComplexBackground = null;
Boolean allowDatamatrixIndustrialBarcodes = null;
Boolean allowDecreasedImage = null;
Boolean allowDetectScanGap = null;
Boolean allowIncorrectBarcodes = null;
Boolean allowInvertImage = null;
Boolean allowMicroWhiteSpotsRemoving = null;
Boolean allowOneDFastBarcodesDetector = null;
Boolean allowOneDWipedBarsRestoration = null;
Boolean allowQRMicroQrRestoration = null;
Boolean allowRegularImage = null;
Boolean allowSaltAndPepperFiltering = null;
Boolean allowWhiteSpotsRemoving = null;
Double regionLikelihoodThresholdPercent = null;
List<Integer> scanWindowSizes = null;
Double similarity = null;
Boolean skipDiagonalSearch = null;
String australianPostEncodingTable = null;
String rectangleRegion = null;
String url = null;

Path currentRelativePath = Paths.get("");
String currentPath = currentRelativePath.toAbsolutePath().toString();
Path filePath = Paths.get(currentPath, "data", "sample.png");

File image = new File(String.valueOf(filePath));

BarcodeResponseList response = 
   	 api.postBarcodeRecognizeFromUrlOrContent( 
      		type,checksumValidation,detectEncoding,preset,rectX,rectY,rectWidth,rectHeight,
      		stripFNC,timeout,medianSmoothingWindowSize,allowMedianSmoothing,allowComplexBackground,
      		allowDatamatrixIndustrialBarcodes,allowDecreasedImage,allowDetectScanGap,
		allowIncorrectBarcodes,allowInvertImage,allowMicroWhiteSpotsRemoving,allowOneDFastBarcodesDetector,
      		allowOneDWipedBarsRestoration,allowQRMicroQrRestoration,allowRegularImage,allowSaltAndPepperFiltering,
      		allowWhiteSpotsRemoving,regionLikelihoodThresholdPercent,scanWindowSizes,similarity,skipDiagonalSearch,
      		australianPostEncodingTable,rectangleRegion,url,image);

assertNotNull(response);
assertFalse(response.getBarcodes().isEmpty());

BarcodeResponse barcode = response.getBarcodes().get(0);
assertEquals(DecodeBarcodeType.CODE11.getValue(), barcode.getType());
assertEquals("1234567812", barcode.getBarcodeValue());
kod kreskowy 2D

Obraz 3: - Podgląd kodu kreskowego 2D.

Jeśli uruchomisz powyższy kod na wyżej określonym obrazie, treść odpowiedzi wyrenderuje dane wyjściowe jako

Ciało odpowiedzi

{  "barcodes":  [  {  "barcodeValue":  "12345678",  "type":  "Code39Standard",  "region":  [  {  "x":  **28**,  "y":  **3**  },  {  "x":  **222**,  "y":  **3**  },  {  "x":  **222**,  "y":  **74**  },  {  "x":  **28**,  "y":  **74**  }  ],  "checksum":  ""  }  ]  }

Wniosek

W tym artykule dowiedzieliśmy się, jak opracować aplikację do skanowania kodów kreskowych przy użyciu Java REST API. Podobnie API umożliwia również implementację czytnika kodów QR z pliku obrazu. Oprócz korzystania z pakietu Java SDK otrzymujemy również opcję skanowania kodów kreskowych online za pomocą poleceń cURL. Nie jest wymagane żadne dodatkowe pobieranie ani instalacja oprogramowania. Jeśli napotkasz jakiekolwiek problemy podczas korzystania z interfejsu API, skontaktuj się z nami za pośrednictwem darmowego forum wsparcia produktu.

Powiązane artykuły

Zalecamy również odwiedzenie poniższych łączy, aby dowiedzieć się więcej o: