我在播放base64图像时遇到问题。
当我以base64格式从相机上传图像时,我可以通过ionic devapp显示它,但是当我从Xcode构建它并在ios设备上本地运行它时,该图像将显示为损坏的图像。
有人解释吗?
谢谢!
private choosePicture() {
const options = {
quality: 100,
destinationType: this.camera.DestinationType.DATA_URL,
encodingType: this.camera.EncodingType.JPEG,
mediaType: this.camera.MediaType.PICTURE,
sourceType: 0,
correctOrientation: true
};
this.camera.getPicture(options).then((imagePath) => {
let base64Image = 'data:image/jpeg;base64,' + imagePath;
let images = this.createClass.get('imagePath') as FormArray;
images.push(new FormControl(base64Image));
}, (err) => {
if(err !== 'no image selected') {
this.logError(err);
}
});
}
和我的html
<ion-col col-6 col-md-4 col-xl-3 *ngFor="let image of createClass.controls['imagePath'].value; let i = index">
<img src="{{ image }}"/>
</ion-col>
答案 0 :(得分:0)
尝试改用[src] =“ image”。
您也可以选择使用destinationType:this.camera.DestinationType.FILE_URI。我使用base64时的经验是,当选择的图像大小很大时,我的应用程序崩溃了。
如果您选择使用file_uri, 从“ ionic-angular”导入{normalizeURL};并将其用作normalizeURL(imagePath);在显示图像之前。
希望获得帮助。