Так что я пытаюсь достичь.Пользователи могут выбирать между съемкой изображения с камеры и загрузкой изображения, но всякий раз, когда они загружают изображение, изображение будет «data: image / jpeg; base64», и я пытался сделать изображение данных большим двоичным объектом, но мой большой объект возвращает объекта не URL-адрес обратно, так как мне это сделать?лучший способ, который у меня есть сейчас:
this.camera.getPicture(options).then((imageData) => {
this.myphoto = 'data:image/jpeg;base64,' + imageData;
this.b64toBlob(this.myphoto, 'image/jpeg', 512);
}, (err) => {
// Handle error
});
код для камеры
и конвертер base64 в blob
b64toBlob(b64Data: string, contentType: string, sliceSize: number) {
contentType = contentType || '';
sliceSize = sliceSize || 512;
var byteCharacters = atob(b64Data.replace(/^data:image\/(png|jpeg|jpg);base64,/, ''));
var byteArrays = [];
for (var offset = 0; offset < byteCharacters.length; offset += sliceSize) {
var slice = byteCharacters.slice(offset, offset + sliceSize);
var byteNumbers = new Array(slice.length);
for (var i = 0; i < slice.length; i++) {
byteNumbers[i] = slice.charCodeAt(i);
}
var byteArray = new Uint8Array(byteNumbers);
byteArrays.push(byteArray);
}
как мне сделать этоBLOB-ссылка или что-то, что будет полезно для хранения изображений в базе данных