#javascript #image #ionic3 #cordova-plugins
#javascript #изображение #ionic3 #cordova-плагины
Вопрос:
В настоящее время я пытаюсь получить изображение из пользовательского режима с помощью предварительного просмотра с камеры, но в результате изображение всегда имеет исходный размер. вот мой код..
RunCamera() {
let quarter = window.screen.height / 4, mid = quarter (quarter/2)
const cameraPreviewOpts: CameraPreviewOptions = {
x: 0,
y: this.mid,
width: window.screen.width,
height: 70,
camera: 'rear',
tapPhoto: true,
previewDrag: true,
toBack: true,
alpha: 1
}
// start camera
this.cameraPreview.startCamera(cameraPreviewOpts).then(
(res) => {
console.log("startCamera ok",res)
},
(err) => {
console.log("startCamera Err",err)
});}
Камера будет работать, как показано ниже .. это работает хорошо..
после этого мне нужно сделать снимок, но результат такой..
Вот мой код..
takePic(){
// picture options
const pictureOpts: CameraPreviewPictureOptions = {
width: 1280,
height: 1280,
quality: 85
}
// take a picture
this.cameraPreview.takePicture(pictureOpts).then((imageData) => {
console.log("takePicture",imageData);
this.selectedImage = 'data:image/png;base64,' imageData;
this.cameraPreview.stopCamera();
}, (err) => {
console.log(err);
alert("Error occured while taking picture:" JSON.stringify(err))
});}
Есть ли способ достичь моей цели?
Ответ №1:
Наконец, через 5 дней я не могу свободно выбирать размеры при съемке. Каждое устройство имеет фиксированный набор возможных размеров, которые можно использовать. Возможны только эти варианты. Если я попытаюсь сделать снимок с помощью приведенных выше опций, плагин выберет поддерживаемый размер, который наиболее близок к заданным параметрам.
То, что я хочу иметь, — это всего лишь часть изображения. Таким образом, вам нужно будет впоследствии манипулировать изображением. Манипулирование изображениями не должно быть частью этого плагина.
https://github.com/cordova-plugin-camera-preview/cordova-plugin-camera-preview/issues/440