@gokujy wrote:
I want to post multipart form data, for this, we can do like this:
let formData = new FormData() formData.append('myfile', 'your blob') this.http.post(url, formData)
But I don’t know how to convert a camera image to the blob. I am using native camera plugin and here my code:
cameraOptions: CameraOptions = { quality: 20, destinationType: this.camera.DestinationType.DATA_URL, encodingType: this.camera.EncodingType.JPEG, mediaType: this.camera.MediaType.PICTURE, sourceType: this.camera.PictureSourceType.PHOTOLIBRARY } constructor(public camera: Camera){} takePhoto() { return new Promise(resolve => { this.camera.getPicture(this.cameraOptions).then((imageData) => { resolve(imageData); }, (err) => { resolve(err); }); }); }
I tried this code for blob:
dataURLtoBlob(dataURL) { debugger; // convert base64/URLEncoded data component to raw binary data held in a string let byteString: string; if (dataURL.split(',')[0].indexOf('base64') >= 0) { byteString = atob(dataURL.split(',')[1]); } else { byteString = unescape(dataURL.split(',')[1]); } // separate out the mime component let mimeString = dataURL .split(',')[0] .split(':')[1] .split(';')[0]; // write the bytes of the string to a typed array let ia = new Uint8Array(byteString.length); for (let i = 0; i < byteString.length; i++) { ia[i] = byteString.charCodeAt(i); } let blobImg = new Blob([ia], { type: mimeString }); console.log(blobImg); this.blobImage = blobImg; }
With this code, I am able to get image data but how to convert in a blob,
please help…
Posts: 1
Participants: 1