es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

react-native-image-picker obtiene la altura y la anchura invertidas

Estoy usando la biblioteca react-native-image-picker para capturar código de imagen de la siguiente manera:

launchImageLibrary({
   includeExtra: false,
   mediaType: "photo",
   selectionLimit: 0,
   quality: 1,
   maxWidth: 1000,
   maxHeight: 1500
}, (res) => {
   console.log(res);
});

Cuando estoy capturando usando un dispositivo real de Android (vertical), obtengo la imagen con lo siguiente:

{
   uri: "string",
   height: 1000,
   width: 750
}

Respuesta esperada y correcta:

{
   uri: "string",
   height: 750,
   width: 1000
}

¿Alguien puede ayudarme?

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Parece que los valores de ancho y alto de la imagen capturada no son correctos. Para solucionar este problema, puedes intentar agregar la opción forceJpg a la función launchImageLibrary, de la siguiente manera:

    launchImageLibrary({
       includeExtra: false,
       mediaType: "photo",
       selectionLimit: 0,
       quality: 1,
       maxWidth: 1000,
       maxHeight: 1500,
       forceJpg: true // agregar esta opción
    }, (res)=>{
       console.log(res);
    });
    

    Esto obligará a la biblioteca a capturar la imagen en formato JPEG, lo que te dará los valores de ancho y alto correctos. Alternativamente, también puedes intentar agregar la opción writeTempFile a la función, lo cual guardará la imagen capturada como un archivo temporal y luego devolverá los valores de ancho y alto correctos:

    launchImageLibrary({
       includeExtra: false,
       mediaType: "photo",
       selectionLimit: 0,
       quality: 1,
       maxWidth: 1000,
       maxHeight: 1500,
       writeTempFile: true // agregar esta opción
    }, (res)=>{
       console.log(res);
    });
    

    Cualquiera de estas opciones debería darte la respuesta esperada y correcta.

Comments are closed.