Hoe een barcodescanner-app te ontwikkelen met behulp van Java SDK. Implementeer QR-scanmogelijkheden in uw web-, mobiele en desktop-applicaties.

Streepjescodescanner

Scan streepjescode online | QR-code scanner

In dit artikel gaan we de details bespreken van het ontwikkelen van een streepjescodescanner en een QR-codescanner-app met Java REST API. We begrijpen dat streepjescodes in de snel veranderende economieën van vandaag een essentiële en levensvatbare oplossing zijn voor verkopers en verkopers voor het opslaan van productdetails. In de loop der jaren hebben ze bewezen een waardevolle en levensvatbare keuze te zijn voor bedrijven. Ze hebben de efficiëntie aanzienlijk verbeterd en de overhead verminderd. De barcodes zijn zowel kosteneffectief als betrouwbaar. Naast andere voordelen van het gebruik van BarCode, die hieronder worden vermeld, zijn er nog enkele voordelen van het gebruik ervan

  • Barcodes elimineren de mogelijkheid van menselijke fouten
  • Het gebruik van een streepjescodesysteem vermindert de opleidingstijd van werknemers
  • Barcodes zijn uiterst veelzijdig en kunnen worden gebruikt voor elke vorm van noodzakelijke gegevensverzameling
  • Ze maken nauwkeurig voorraadbeheer mogelijk, waardoor het voorraadbeheer verbetert
  • Bovendien bieden de streepjescodes betere gegevens, dwz een enkele streepjescode kan voorraad- en prijsdetails geven

Relevant voor al deze functies stelt Aspose.BarCode Cloud Java SDK Java-ontwikkelaars in staat om online barcodes te creëren en te scannen met Java-taal. Net als bij onze andere Cloud API’s, vereist Aspose.BarCode Cloud Java SDK dat u een account registreert bij Cloud Dashboard. Als u al een account heeft geregistreerd, kunt u deze blijven gebruiken. Zodra u uw account gereed heeft, kunt u de Cloud Services gebruiken via AppKey en AppSID.

U kunt overwegen om Aspose Cloud-opslag te gebruiken of cloudopslagservices van derden te gebruiken voor het opslaan en ophalen van bestanden.

Ondersteunde streepjescodesymbolen

De SDK ondersteunt talloze streepjescodesymbolen (meer dan 60) zoals EAN, UPC, Codabar, PDF417, QR, MicroQR, Postnet, Planet, RM4SCC, enz. U krijgt ook de mogelijkheid om bestaande streepjescode-informatie te laden en de uitvoer op te slaan in een populaire afbeelding indelingen, zoals JPEG, PNG, GIF, BMP, TIFF, EMF, WMF, SVG, EXIF en ICON. Ga voor een volledige lijst met ondersteunde symbologieën naar Aspose.BarCode Cloud Java SDK.

Streepjescode genereren

De SDK biedt u de mogelijkheid om lineaire, 2D- en postbarcode-afbeeldingen te maken in een overvloed aan formaten. U kunt afbeeldingskenmerken van streepjescodes specificeren, zoals afbeeldingsbreedte, hoogte, randstijl en uitvoerafbeeldingsformaat. U kunt ook het streepjescodetype en tekstattributen, zoals tekstlocatie en lettertypestijlen, specificeren volgens uw toepassingsvereisten. Het biedt ook de mogelijkheid om de hoogte van balken in te stellen en barcodeafbeeldingen onder een hoek te draaien.

Het volgende voorbeeld toont de stappen om Code39Standard Barcode te maken, geplaatst op de Top-Center uitlijning van de pagina. De tekstkleur is gespecificeerd als Navy, Horizontaal en de verticale resolutie is gespecificeerd als 200. De BarColor is gespecificeerd als Oranje, de achtergrondkleur is ingesteld als zilver en het uitvoerformaat is JPEG-formaat.

Voordat we verder gaan, raden we u aan de volgende link te bezoeken, aangezien een JWT-token nodig is bij toegang tot de API met behulp van de cURL-opdracht.

Krul

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>"

URL aanvragen

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

Java

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();
}
Online barcodescanner

Afbeelding 1: - Resulterend streepjescodevoorbeeld.

Barcodelezer online

QR-scan

Afbeelding 2: QR-codescanner

De Cloud API is ook in staat om informatie uit bestaande barcodes te herkennen. U krijgt de mogelijkheid om de details van het streepjescodetype op te geven voor snel ophalen of om de API het type automatisch te laten bepalen. U kunt ook ChecksumValidation-details, DetectEncoding specificeren of de API deze tijdens runtime laten bepalen.

Krul

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":{}}

URL aanvragen

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

Java

// Ga voor volledige voorbeelden en gegevensbestanden naar 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());
2D streepjescode

Afbeelding 3:- Voorbeeld van 2D-streepjescode.

Als u de bovenstaande code uitvoert op de hierboven gespecificeerde afbeelding, geeft de hoofdtekst van het antwoord de uitvoer weer als

Reactie lichaam

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

Gevolgtrekking

In dit artikel hebben we de stappen geleerd voor het ontwikkelen van een barcodescanner-app met behulp van Java REST API. Evenzo stelt de API u ook in staat om een QR-codelezer uit een afbeeldingsbestand te implementeren. Afgezien van het gebruik van de Java SDK, krijgen we ook een optie om online streepjescodes te scannen met behulp van cURL-opdrachten. Er is geen extra softwaredownload of installatie vereist. Als u problemen ondervindt tijdens het gebruik van de API, neem dan gerust contact met ons op via het gratis productondersteuningsforum.

gerelateerde artikelen

We raden ook aan om de volgende links te bezoeken voor meer informatie over: