Ionic 电容相机是不是加载图像预览在Android上

uqdfh47h  于 2023-04-27  发布在  Ionic
关注(0)|答案(1)|浏览(142)

我的代码如下

import { Camera, CameraResultType, CameraSource, Photo } from '@capacitor/camera';
....
const capturedPhoto = await Camera.getPhoto({
            resultType: CameraResultType.Uri,
            source: CameraSource.Camera,
            quality: 100
        });
const base64Data = await this.readAsBase64(capturedPhoto);

        this.photos['image'][this.myindex] = base64Data;
        this.myindex++;
        this.photos.reverse();

我正在使用this.photos ['image']循环并显示它。它可以在Web浏览器上工作,但不能在Android设备上工作。任何帮助都将非常感谢

vmjh9lq9

vmjh9lq91#

您需要将resultType设置为Base64。请参阅文档:
图像的base64编码字符串表示形式(如果使用CameraResultType.Base64)。
你也可以使用convertFileSrc(...)​来实现:

const capturedPhoto = await Camera.getPhoto({
  resultType: CameraResultType.Uri,
  source: CameraSource.Camera,
  quality: 100
});
const fileSrc = Capacitor.convertFileSrc(capturedPhoto.path),
document.getElementById("savedPhoto").src = fileSrc;
<img id="savedPhoto" />

顺便说一句:如果你可以共享字符串,你也可以直接以Base64格式共享图像。

相关问题