Configurar la cámara y la altura de la cámara
Actualmente estoy en el proceso de crear una aplicación para móviles que utiliza el complemento de cámara Phonegap (Cordova) . Captura correctamente la imagen y la muestra donde quiera, pero no puedo configurar las opciones targetWidth y targetHeight, como se describe.
TargetWidth: Ancho en píxeles para escalar la imagen. Debe utilizarse con targetHeight. La relación de aspecto permanece constante. (Número)
- Cordova default config.xml URI no está registrado
- El audio no se reproduce en Android con el teléfono, pero funciona bien en iOS
- ¿Alternativas al uso de la base de datos Web SQL para almacenar gran cantidad de datos en la aplicación Phonegap?
- Pasar y devolver los valores de javascript y android y utilizarlos como plugin de brecha de teléfono
- notificaciones push de Google Chrome android
TargetHeight: Altura en píxeles para escalar la imagen. Debe utilizarse con targetWidth. La relación de aspecto permanece constante. (Número)
Según entiendo, esto cambiará el ancho de la imagen y la altura en la salida. Ellos, sin embargo, no parecen estar funcionando.
Una sugerencia que encontré mientras investigaba para una solución, dijo que usar el parámetro opcional allowEdit
. En esto, podría hacer que el usuario seleccionara una imagen cuadrada preestablecida. Sin embargo, esto no parece funcionar.
Vea mi código abajo para referencia.
camera: function() { //Fire up the camera! navigator.camera.getPicture(onSuccess, onFail, { destinationType: Camera.DestinationType.DATA_URL, allowEdit: true, targetWidth: 512, targetHeight: 512 }); },
Ninguno de los intentos tuvo éxito en lo que yo quería; Una anchura y una altura fijas para la imagen capturada.
¿Cómo puedo configurar el ancho y la altura de la imagen en esta imagen?
- AAC con PhoneGap en Android
- Obtener la ruta absoluta a la carpeta de activos en PhoneGap
- Inter-dispositivo de comunicación a través de Bluetooth con Phonegap en Android?
- ¿Podemos usar una base de datos SQLITE aldready preparada para una aplicación phonegap?
- PhoneGap FileTransfer.download espera una ruta diferente que FileSystem proporciona
- Los complementos no siempre se agregan después de cordova añadir plataforma android and iOs
- No se pudo encontrar com.parse.bolts: bolts-android: 1.1.2. En el proyecto de la brecha del teléfono (estudio del androide)?
- Almacenamiento seguro para la aplicación Android PhoneGap
Prueba este amigo. Eliminar allowEdit : true
camera: function() { navigator.camera.getPicture(onSuccess, onFail, { quality: 50, targetWidth: 512, targetHeight: 512, destinationType: navigator.camera.DestinationType. DATA_URL, saveToPhotoAlbum: true, correctOrientation: true }); }
¿Qué te parece cambiar tu mente para cambiar el tamaño de la imagen después de que se ha capturado?
Artículo útil para cambiar el tamaño de la imagen con lienzo HTML5
Utilizo el siguiente y funciona bien.
{ quality: 25, targetWidth: 500, targetHeight: 500, destinationType: Camera.DestinationType.FILE_URI, sourceType: Camera.PictureSourceType.CAMERA, correctOrientation: true }
También es posible modificar el código nativo de plugin según sus propias necesidades. En caso de que esté intentando en android. Aquí está la solución.
Dentro de la función de ejecución , los dos parámetros se establecen de forma predeterminada como cero que significa un tamaño completo capturado por el dispositivo, de lo contrario si algunos valores son pasados por los parámetros args , entonces se tienen en cuenta.
public boolean execute(String action, JSONArray args, CallbackContext callbackContext) throws JSONException { this.callbackContext = callbackContext; if (action.equals("takePicture")) { int srcType = CAMERA; int destType = FILE_URI; this.saveToPhotoAlbum = false; this.targetHeight = 0; this.targetWidth = 0; this.encodingType = JPEG; this.mediaType = PICTURE; this.mQuality = 80; this.mQuality = args.getInt(0); destType = args.getInt(1); srcType = args.getInt(2); this.targetWidth = args.getInt(3); this.targetHeight = args.getInt(4); this.encodingType = args.getInt(5); this.mediaType = args.getInt(6); this.allowEdit = args.getBoolean(7); this.correctOrientation = args.getBoolean(8); this.saveToPhotoAlbum = args.getBoolean(9);
Consulte: https://github.com/apache/cordova-plugin-camera/blob/master/src/android/CameraLauncher.java#L115
Si es posible, puedes configurarlo también en el código nativo y funciona bien.
- Enfoque de Fragmentos anidados de Android
- StartActivityForResult y Intents Extras, parece que los extras no son rechazados