Cách phát triển Ứng dụng quét mã vạch bằng Java SDK. Triển khai khả năng quét QR trong Ứng dụng Web, Di động và Máy tính để bàn của bạn.

Máy quét mã vạch

Quét mã vạch trực tuyến | máy quét mã QR

Trong bài viết này, chúng ta sẽ thảo luận chi tiết về cách phát triển Máy quét mã vạch và ứng dụng máy quét mã QR bằng Java REST API. Chúng tôi hiểu rằng trong nền kinh tế phát triển nhanh ngày nay, Mã vạch là một giải pháp thiết yếu và khả thi cho các nhà cung cấp và người bán để lưu trữ thông tin chi tiết về sản phẩm. Trong những năm qua, họ đã chứng tỏ là một sự lựa chọn có giá trị và khả thi cho các doanh nghiệp. Họ đã cải thiện đáng kể hiệu quả và giảm chi phí. Các mã vạch vừa tiết kiệm chi phí vừa đáng tin cậy. Trong số các lợi ích khác của việc sử dụng Mã vạch, được chỉ định bên dưới là một số lợi ích khác của việc sử dụng chúng

  • Mã vạch loại bỏ khả năng lỗi của con người
  • Sử dụng hệ thống mã vạch giúp giảm thời gian đào tạo nhân viên
  • Mã vạch cực kỳ linh hoạt và có thể được sử dụng cho bất kỳ loại thu thập dữ liệu cần thiết nào
  • Chúng cho phép kiểm soát hàng tồn kho chính xác và do đó Kiểm soát hàng tồn kho được cải thiện
  • Hơn nữa, Mã vạch cung cấp dữ liệu tốt hơn, tức là một mã vạch duy nhất có thể cung cấp chi tiết về hàng tồn kho và giá cả

Phù hợp với tất cả các tính năng như vậy, Aspose.BarCode Cloud Java SDK trao quyền cho các nhà phát triển Java tạo cũng như quét Mã vạch trực tuyến bằng ngôn ngữ Java. Tương tự như các API đám mây khác của chúng tôi, Aspose.BarCode Cloud Java SDK yêu cầu bạn phải đăng ký tài khoản tại Cloud Dashboard. Nếu bạn đã đăng ký tài khoản, bạn có thể tiếp tục sử dụng tài khoản đó. Khi tài khoản của bạn đã sẵn sàng, bạn có thể sử dụng Dịch vụ đám mây thông qua AppKey và AppSID.

Bạn có thể cân nhắc sử dụng bộ nhớ Aspose Cloud hoặc sử dụng bất kỳ dịch vụ lưu trữ đám mây nào của bên thứ ba để lưu trữ và truy xuất tệp.

Ký hiệu mã vạch được hỗ trợ

SDK hỗ trợ nhiều ký hiệu Mã vạch (hơn 60) chẳng hạn như EAN, UPC, Codabar, PDF417, QR, MicroQR, Postnet, Planet, RM4SCC, v.v. Bạn cũng có tùy chọn tải thông tin Mã vạch hiện có và lưu đầu ra thành hình ảnh phổ biến các định dạng, chẳng hạn như JPEG, PNG, GIF, BMP, TIFF, EMF, WMF, SVG, EXIFICON. Để có danh sách đầy đủ các ký hiệu được hỗ trợ, vui lòng truy cập Aspose.BarCode Cloud Java SDK.

Tạo mã vạch

SDK cung cấp cho bạn khả năng tạo hình ảnh mã vạch tuyến tính, 2D và bưu chính ở nhiều định dạng. Bạn có thể chỉ định các thuộc tính hình ảnh mã vạch như chiều rộng, chiều cao, kiểu đường viền và định dạng hình ảnh đầu ra của hình ảnh. Bạn cũng có thể chỉ định loại mã vạch và thuộc tính văn bản, chẳng hạn như vị trí văn bản và kiểu phông chữ theo yêu cầu ứng dụng của bạn. Nó cũng cung cấp khả năng đặt chiều cao của thanh và xoay hình ảnh mã vạch theo một góc.

Ví dụ sau đây cho thấy các bước để tạo Mã vạch chuẩn Code39, được đặt trên căn chỉnh Trung tâm trên cùng của trang. Màu văn bản được chỉ định là Hải quân, Độ phân giải ngang và Dọc được chỉ định là 200. Màu BarColor được chỉ định là Cam, màu nền được đặt là bạc và định dạng đầu ra là định dạng JPEG.

Trước khi tiếp tục, chúng tôi khuyên bạn nên truy cập vào liên kết sau vì mã thông báo JWT là cần thiết khi truy cập API bằng lệnh cURL.

Xoăn

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 yêu cầu

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();
}
Máy quét mã vạch trực tuyến

Hình ảnh 1:- Xem trước mã vạch kết quả.

Đầu đọc mã vạch trực tuyến

quét QR

Hình ảnh 2: Máy quét mã QR

Cloud API cũng có khả năng nhận dạng thông tin từ các mã vạch hiện có. Bạn có tùy chọn chỉ định chi tiết loại Mã vạch để truy xuất nhanh hoặc để API xác định loại tự động. Bạn cũng có thể chỉ định chi tiết ChecksumValidation, DetectEncoding hoặc để API xác định chúng trong thời gian chạy.

Xoăn

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 yêu cầu

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

Java

// Để biết các ví dụ và tệp dữ liệu đầy đủ, vui lòng truy cập 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());
mã vạch 2d

Hình ảnh 3:- Xem trước mã vạch 2D.

Nếu bạn chạy đoạn mã trên trên hình ảnh được chỉ định ở trên, phần thân Phản hồi sẽ hiển thị đầu ra dưới dạng

nội dung phản hồi

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

Phần kết luận

Trong bài viết này, chúng ta đã tìm hiểu các bước về cách phát triển Ứng dụng quét mã vạch bằng Java REST API. Tương tự, API cũng cho phép bạn triển khai trình đọc mã QR từ tệp hình ảnh. Ngoài việc sử dụng SDK Java, chúng tôi còn có tùy chọn quét mã vạch trực tuyến bằng các lệnh cURL. Không cần tải xuống hoặc cài đặt phần mềm bổ sung. Trong trường hợp bạn gặp phải bất kỳ sự cố nào khi sử dụng API, vui lòng liên hệ với chúng tôi qua diễn đàn hỗ trợ sản phẩm miễn phí.

Những bài viết liên quan

Chúng tôi cũng khuyên bạn nên truy cập các liên kết sau để tìm hiểu thêm về: