Я создаю приложение Ionic Cordova в Angular. Я должен создать PDF со значениями формы и изображениями. Я использую Cordova Camera, чтобы получить изображение, которое работает нормально.
Как только я получу изображение, как мне использовать его в моем PDFmake без преобразования в Base64? Base64 обширный и ломается на старых устройствах.
Камера Get Picture
takePicture() {
const options: CameraOptions = {
quality: 95,
destinationType: this.camera.DestinationType.FILE_URI,
sourceType: this.camera.PictureSourceType.CAMERA,
encodingType: this.camera.EncodingType.PNG,
targetWidth: 400,
targetHeight: 400,
saveToPhotoAlbum: true,
correctOrientation: true
};
this.camera.getPicture(options).then((imageData) => {
const sourceDirectory = imageData.substring(0, imageData.lastIndexOf('/') + 1);
const sourceFileName = imageData.substring(imageData.lastIndexOf('/') + 1, imageData.length);
this.selectedImage = this.webView.convertFileSrc(imageData);
this.photos.push({
image: this.selectedImage,
rawImage: sourceFileName,
});
this.storage.set('photos', this.photos);
console.log('Copying from : ' + sourceDirectory + sourceFileName);
console.log('Copying to : ' + this.file.dataDirectory + sourceFileName);
this.file.copyFile(sourceDirectory, sourceFileName, cordova.file.dataDirectory, sourceFileName).then(function(success) {
const fileName = cordova.file.dataDirectory + sourceFileName;
console.log(fileName);
}, (error) => {
console.dir(error);
});
}, (err) => {
// Handle error
console.log('Camera issue:' + err);
});
}
С PDFmake я могу создавать PDF со значениями формы, но изображения отображаются только при использовании base64. Я не хочу использовать base64.
Я хочу сохранить захваченные изображения в приложении, а затем использовать локальные файлы.