Android 照相机照片未显示在屏幕3上
我试着展示一张用相机拍的照片 这是我的HTML:Android 照相机照片未显示在屏幕3上,android,html,ios,typescript,ionic3,Android,Html,Ios,Typescript,Ionic3,我试着展示一张用相机拍的照片 这是我的HTML: <ion-grid> <ion-row> <ion-col col-6> <button ion-button full (click)="prendreUnePhoto()">Prendre une photo</button> </ion-col> <ion-col col-6> <button ion-button full
<ion-grid>
<ion-row>
<ion-col col-6>
<button ion-button full (click)="prendreUnePhoto()">Prendre une photo</button>
</ion-col>
<ion-col col-6>
<button ion-button full (click)="choisirUneImage()">Choisir une image</button>
</ion-col>
</ion-row>
<ion-row>
<ion-col col-12>
<button ion-button full (click)="envoiMail()">Envoyer Email</button>
</ion-col>
</ion-row>
谢谢您的帮助。您不能直接从本地路径显示图像。在您的设备中。 相反,您需要从本地路径读取该图像,然后将该数据保存到任何变量中,然后将该变量作为src分配给img标记 a已使用简单函数完成此操作,如下所示
public currentImage**strong text**: any;
readImage(filePath) {
let tempPath = filePath.substr(0, filePath.lastIndexOf('/') + 1);
let imageName = filePath.substr(filePath.lastIndexOf('/') + 1);
this.file.readAsDataURL(tempPath, imageName)
.then((res) => {
this.currentImage= res;
}, (err) => {
});
}
这对我有用…你好。这不是我本地路径上的照片。这是我相机拍的一张照片。在我观看的不同教程中,它们直接显示(使用大致相同的代码)照片。
currentImage = null
constructor(public navCtrl: NavController, public navParams: NavParams, private emailComposer : EmailComposer, private camera: Camera) {
}
prendreUnePhoto() {
const options: CameraOptions = {
sourceType: this.camera.PictureSourceType.CAMERA,
destinationType: this.camera.DestinationType.FILE_URI,
encodingType: this.camera.EncodingType.JPEG,
mediaType: this.camera.MediaType.PICTURE
}
this.camera.getPicture(options).then((imageData) => {
this.currentImage = imageData;
}, (err) => {
// Handle error
console.log('Image error: ', err);
});
}
envoiMail(){
let email = {
to : 'bastien.roussel.19@gmail.com',
subject : '[IONIC] test mail',
body : 'Premier <b>email</b> de test depuis ionic 3',
attachments: [
this.currentImage
],
isHtml : true
};
this.emailComposer.open(email);
this.currentImage = 'data:image/jpeg;base64,' + imageData;
public currentImage**strong text**: any;
readImage(filePath) {
let tempPath = filePath.substr(0, filePath.lastIndexOf('/') + 1);
let imageName = filePath.substr(filePath.lastIndexOf('/') + 1);
this.file.readAsDataURL(tempPath, imageName)
.then((res) => {
this.currentImage= res;
}, (err) => {
});
}