private async selectImage() {
let uri
=
await this.openPhoto();
if
(uri
=
=
=
undefined) {
hilog.error(
0x0000
,
'OCRDemo'
,
"Failed to get uri."
);
return
;
}
this.loadImage(uri);
}
private openPhoto(): Promise<string> {
return
new Promise<string>((resolve, reject)
=
> {
let photoPicker
=
new picker.PhotoViewPicker();
photoPicker.select({
MIMEType: picker.PhotoViewMIMETypes.IMAGE_TYPE,
maxSelectNumber:
1
}).then((res: picker.PhotoSelectResult)
=
> {
resolve(res.photoUris[
0
]);
}).catch((err: BusinessError)
=
> {
hilog.error(
0x0000
,
'OCRDemo'
, `Failed to get photo image uri. code:${err.code},message:${err.message}`);
resolve('');
})
})
}
private loadImage(name: string) {
setTimeout(async ()
=
> {
let imageSource: image.ImageSource | undefined
=
undefined;
let fileSource
=
await fileIo.
open
(name, fileIo.OpenMode.READ_ONLY);
imageSource
=
image.createImageSource(fileSource.fd);
this.chooseImage
=
await imageSource.createPixelMap();
},
100
)
}