This is the image I want to bring those text present in the image in my valve serial number used many libraries https://github.com/ashrithks/rn-text-detector https://github.com/zsajjad/react-native-text-detector It does not work in iOS but it works in android while implementing in iOS I got this error
CompileC /Users/Macbook/Library/Developer/Xcode/DerivedData/CRANE-ciqqhizauxjmlaevomkjkiypelyu/Build/Intermediates.noindex/Pods.build/Debug-iphonesimulator/RNTextDetector.build/Objects-normal/x86_64/RNTextDetector.o /Users/Macbook/Documents/GitHub/crane-app/CRANE/node_modules/rn-text-detector/ios/RNTextDetector.m normal x86_64 objective-c com.apple.compilers.llvm.clang.1_0.compiler (in target 'RNTextDetector' from project 'Pods') (1 failure)
The code I used inside the
import RNTextDetector from "rn-text-detector";
const captureImage = async type => {
let options = {
mediaType: type,
maxWidth: 300,
maxHeight: 550,
quality: 1,
videoQuality: 'low',
durationLimit: 30, //Video max duration in seconds
saveToPhotos: true,
};
let isCameraPermitted = await requestCameraPermission();
let isStoragePermitted = await requestExternalWritePermission();
if (isCameraPermitted && isStoragePermitted) {
launchCamera(options, response => {
console.log('Response = ', response
);
if (response.didCancel) {
alert('User cancelled camera picker');
return;
} else if (response.errorCode == 'camera_unavailable') {
alert('Camera not available on device');
return;
} else if (response.errorCode == 'permission') {
alert('Permission not satisfied');
return;
} else if (response.errorCode == 'others') {
alert(response.errorMessage);
return;
}
console.log('base64 -> ', response.assets[0].base64);
console.log('uri -> ', response.assets[0].uri);
console.log('width -> ', response.assets[0].width);
console.log('height -> ', response.assets[0].height);
console.log('fileSize -> ', response.assets[0].fileSize);
console.log('type -> ', response.assets[0].type);
console.log('fileName -> ', response.assets[0].fileName);
setFilePath(response.assets[0].uri);
(async () => {
const textRecognition = await RNTextDetector.detectFromUri(response.assets[0].uri);
console.log('Base64_Image', textRecognition);
setSerialNumber(textRecognition[0].text)
})();
RNFS.readFile(response.assets[0].uri, "base64").then(result => {
// setSingleFileBase64('data:image/png;base64,' + result)
setImage('data:/' + response.assets[0].type + ';' + 'base64,' + result)
// console.log('Base64_Image', 'data:/'+response.assets[0].type+';'+'base64,' + result);
setScreenData({ ...screenData, image1: 'data:/' + response.assets[0].type + ';' + 'base64,' + result });
})
});
}
};
]
