Base64映像损坏的ios

时间:2019-10-14 16:37:07

标签: ios typescript ionic-framework base64

我在播放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>

1 个答案:

答案 0 :(得分:0)

尝试改用[src] =“ image”。

您也可以选择使用destinationType:this.camera.DestinationType.FILE_URI。我使用base64时的经验是,当选择的图像大小很大时,我的应用程序崩溃了。

如果您选择使用file_uri, 从“ ionic-angular”导入{normalizeURL};并将其用作normalizeURL(imagePath);在显示图像之前。

希望获得帮助。