extractPackaging static method
Future<OcrPackagingResult>
extractPackaging(
- User user,
- String barcode,
- OpenFoodFactsLanguage language, {
- OcrField ocrField = OcrField.GOOGLE_CLOUD_VISION,
- UriProductHelper uriHelper = uriHelperFoodProd,
Extracts the text from packaging image with OCR.
Uses already uploaded images
language
should be the language of the text on the product
User user = User(userId: '', password: '');
OcrPackagingResult result = await OpenFoodAPIClient.extractPackaging(
user,
'3274080005003',
OpenFoodFactsLanguage.ENGLISH,
);
print(result.textFromImage); // SPRING WATER LE AUSE MGL Bicarbonates...
Implementation
static Future<OcrPackagingResult> extractPackaging(
final User user,
final String barcode,
final OpenFoodFactsLanguage language, {
final OcrField ocrField = OcrField.GOOGLE_CLOUD_VISION,
final UriProductHelper uriHelper = uriHelperFoodProd,
}) async {
final Uri uri = uriHelper.getPostUri(
path: '/cgi/packaging.pl',
);
final Map<String, String> queryParameters = <String, String>{
'code': barcode,
'process_image': '1',
'id': 'packaging_${language.offTag}',
'ocr_engine': ocrField.offTag
};
final Response response = await HttpHelper().doPostRequest(
uri,
queryParameters,
user,
uriHelper: uriHelper,
addCredentialsToBody: false,
);
return OcrPackagingResult.fromJson(
HttpHelper().jsonDecode(utf8.decode(response.bodyBytes))
as Map<String, dynamic>,
);
}