Tổng quan Read MRZ
Read MRZ là một ứng dụng nhận dạng Vùng có thể đọc bằng máy (MRZ) hai dòng bằng máy ảnh trên thiết bị của bạn.
Chỉ cần đặt các đường MRZ trong chế độ xem của máy ảnh để nó xuất hiện bên trong hình chữ nhật hướng dẫn nét đứt màu đen và trắng trong cửa sổ ứng dụng.
Các điểm đánh dấu tìm kiếm hình chữ T màu trắng hiển thị khu vực mà ứng dụng phát hiện sự hiện diện của các đường MRZ. Bạn có thể sửa vị trí của các đường MRZ đối với hình chữ nhật hướng dẫn sao cho các điểm đánh dấu tìm kiếm sẽ thẳng hàng với chúng và chuyển sang màu xanh lục.
Hình chữ nhật hướng dẫn chuyển sang màu xanh lục khi ứng dụng đã tìm thấy các dòng và cố gắng nhận dạng các ký tự trong đó.
Nếu ứng dụng nhận dạng thành công tất cả các ký tự và tìm thấy cấu trúc MRZ trong các dòng được trình bày, thì các dòng MRZ được nhận dạng sẽ xuất hiện trong trường tương ứng trong cửa sổ ứng dụng.
Nếu bạn muốn tạm dừng quá trình nhận dạng bất kỳ lúc nào hoặc bắt đầu lại, chỉ cần nhấn nút "Phát/Tạm dừng".
Nếu bạn là nhà phát triển muốn sử dụng kết quả nhận dạng trong ứng dụng của mình, chỉ cần khởi chạy ứng dụng Read MRZ từ ứng dụng của bạn thông qua startActivityForResult() với mục đích ngầm định
"com.readmrz.conditionalIntents.uniqueActions.READ_MRZ" và khi quá trình nhận dạng hoàn tất, hãy nhấn nút "Trả lại kết quả" trong giao diện của ứng dụng Read MRZ.
Lưu ý rằng nút "Trả lại kết quả" chỉ xuất hiện trong giao diện của ứng dụng nếu ứng dụng được một ứng dụng khác khởi chạy với mục đích ngầm định.
Bạn có thể nhận được kết quả nhận dạng trong ứng dụng của mình trong lệnh gọi lại onActivityResult() bằng cách gọi phương thức getStringArrayExtra() của mục đích kết quả với tên của dữ liệu bổ sung là "dòng MRZ". Kết quả sẽ là một mảng gồm hai chuỗi.
Nếu nhấn nút "Return result" trước khi thực hiện nhận dạng thành công, thì "resultCode" trong lệnh gọi lại onActivityResult() được đặt thành "RESULT_CANCELED" và không có ý định kết quả nào được cung cấp.
Xem đoạn mã bên dưới để biết chi tiết về cách sử dụng tính năng này.
giá trị READ_MRZ_APP_REQUEST_CODE = 145
startReadMRZAppForResult() vui vẻ {
val aim = Intent("com.readmrz.conditionalIntents.uniqueActions.READ_MRZ")
startActivityForResult(ý định, READ_MRZ_APP_REQUEST_CODE)
}
ghi đè niềm vui trênActivityResult(requestCode: Int, resultCode: Int, resultsIntent: Intent?) {
super.onActivityResult(mã yêu cầu, mã kết quả, kết quảIntent)
if ((Mã yêu cầu == READ_MRZ_APP_REQUEST_CODE) && (Mã kết quả == RESULT_OK)) {
kết quảIntent?.getStringArrayExtra("dòng MRZ")?.cũng {
val mrzUpperLine = nó[0]
val mrzLowerLine = nó[1]
}
}
}
Chỉ cần đặt các đường MRZ trong chế độ xem của máy ảnh để nó xuất hiện bên trong hình chữ nhật hướng dẫn nét đứt màu đen và trắng trong cửa sổ ứng dụng.
Các điểm đánh dấu tìm kiếm hình chữ T màu trắng hiển thị khu vực mà ứng dụng phát hiện sự hiện diện của các đường MRZ. Bạn có thể sửa vị trí của các đường MRZ đối với hình chữ nhật hướng dẫn sao cho các điểm đánh dấu tìm kiếm sẽ thẳng hàng với chúng và chuyển sang màu xanh lục.
Hình chữ nhật hướng dẫn chuyển sang màu xanh lục khi ứng dụng đã tìm thấy các dòng và cố gắng nhận dạng các ký tự trong đó.
Nếu ứng dụng nhận dạng thành công tất cả các ký tự và tìm thấy cấu trúc MRZ trong các dòng được trình bày, thì các dòng MRZ được nhận dạng sẽ xuất hiện trong trường tương ứng trong cửa sổ ứng dụng.
Nếu bạn muốn tạm dừng quá trình nhận dạng bất kỳ lúc nào hoặc bắt đầu lại, chỉ cần nhấn nút "Phát/Tạm dừng".
Nếu bạn là nhà phát triển muốn sử dụng kết quả nhận dạng trong ứng dụng của mình, chỉ cần khởi chạy ứng dụng Read MRZ từ ứng dụng của bạn thông qua startActivityForResult() với mục đích ngầm định
"com.readmrz.conditionalIntents.uniqueActions.READ_MRZ" và khi quá trình nhận dạng hoàn tất, hãy nhấn nút "Trả lại kết quả" trong giao diện của ứng dụng Read MRZ.
Lưu ý rằng nút "Trả lại kết quả" chỉ xuất hiện trong giao diện của ứng dụng nếu ứng dụng được một ứng dụng khác khởi chạy với mục đích ngầm định.
Bạn có thể nhận được kết quả nhận dạng trong ứng dụng của mình trong lệnh gọi lại onActivityResult() bằng cách gọi phương thức getStringArrayExtra() của mục đích kết quả với tên của dữ liệu bổ sung là "dòng MRZ". Kết quả sẽ là một mảng gồm hai chuỗi.
Nếu nhấn nút "Return result" trước khi thực hiện nhận dạng thành công, thì "resultCode" trong lệnh gọi lại onActivityResult() được đặt thành "RESULT_CANCELED" và không có ý định kết quả nào được cung cấp.
Xem đoạn mã bên dưới để biết chi tiết về cách sử dụng tính năng này.
giá trị READ_MRZ_APP_REQUEST_CODE = 145
startReadMRZAppForResult() vui vẻ {
val aim = Intent("com.readmrz.conditionalIntents.uniqueActions.READ_MRZ")
startActivityForResult(ý định, READ_MRZ_APP_REQUEST_CODE)
}
ghi đè niềm vui trênActivityResult(requestCode: Int, resultCode: Int, resultsIntent: Intent?) {
super.onActivityResult(mã yêu cầu, mã kết quả, kết quảIntent)
if ((Mã yêu cầu == READ_MRZ_APP_REQUEST_CODE) && (Mã kết quả == RESULT_OK)) {
kết quảIntent?.getStringArrayExtra("dòng MRZ")?.cũng {
val mrzUpperLine = nó[0]
val mrzLowerLine = nó[1]
}
}
}
Xem thêm