Camera 用户无法上载文件大小超过4MB的图像
用户不应该上传图像 文件大小不应超过4MBCamera 用户无法上载文件大小超过4MB的图像,camera,ionic4,Camera,Ionic4,用户不应该上传图像 文件大小不应超过4MB takePicture() { //camera option(take image with camera) const options: CameraOptions = { quality: 70, destinationType: this.camera.DestinationType.DATA_URL, sourceType: this.camera.Pictu
takePicture() { //camera option(take image with camera)
const options: CameraOptions = {
quality: 70,
destinationType: this.camera.DestinationType.DATA_URL,
sourceType: this.camera.PictureSourceType.CAMERA,
encodingType: this.camera.EncodingType.JPEG,
mediaType: this.camera.MediaType.PICTURE,
saveToPhotoAlbum:false
}
this.camera.getPicture(options).then((imageData) => {
this.base64Image = 'data:image/jpeg;base64,' + imageData;
}, (err) => {
console.log(err)
});
}
您不应该对映像使用base64。这是因为使用太多内存会使旧设备上的应用程序崩溃 更好的解决方案是将其保存到文件中 不过,您的4mb上传限制与摄像头插件无关 你需要一个不同的插件来调整图像的大小 您可能想试试这个:
import { ImageResizer, ImageResizerOptions } from '@ionic-native/image-resizer/ngx';
constructor(private imageResizer: ImageResizer) { }
...
let options = {
uri: uri,
folderName: 'Protonet',
quality: 90,
width: 1280,
height: 1280
} as ImageResizerOptions;
this.imageResizer
.resize(options)
.then((filePath: string) => console.log('FilePath', filePath))
.catch(e => console.log(e));
为了满足您的文件大小要求,我还要做两件事:
这就是为什么可能需要第二位。或者,您可以只设置一个通常在3mb左右的调整大小,以提供足够的缓冲区。这可能是最好的,因为将图像大小调整3-4次以降低到目标文件大小对用户来说可能会很慢。谢谢,非常感谢您的回复。使用图像大小调整器,我们可以调整图像大小,但如何限制上载文件大小不超过4MB的图像。请访问此链接: