Как оптимизировать изображение в React Native и просматривать на последних моделях iPhone

#react-native #react-native-image-picker

#react-native #react-native-средство выбора изображений

Вопрос:

Фотографии, сделанные с помощью камеры, слишком велики для эффективной загрузки в React native. Также я сталкиваюсь с проблемами при отображении изображений на последних моделях iPhone, таких как X, XS, XSMax и XR

Я использую пакет npm react-native-image-picker. Хотя это работает хорошо, но я не могу изменить размер изображения, что является для меня главной проблемой!!

Ожидаемый результат: я должен иметь возможность изменять размер изображения и загружать его на сервер, а также просматривать его на всех мобильных телефонах.

Фактический результат: я не могу изменить размер изображения, а также не могу просмотреть изображение на iPhone X и других последних моделях iPhone.

Ответ №1:

Вы можете использовать expo-image-manipulator для сжатия изображений.

Если вы используете expo, оно предварительно установлено, и вы можете импортировать его напрямую:

 import { ImageManipulator } from 'expo';

const manipResult = await ImageManipulator.manipulateAsync(
    image,
    [],
    { compress: 0.5 }
);
  

В противном случае вы должны установить его как отдельный пакет и использовать его следующим образом:

 import * as ImageManipulator from 'expo-image-manipulator';

const manipResult = await ImageManipulator.manipulateAsync(
    image,
    [],
    { compress: 0.5 }
);
  

значение сжатия должно быть в диапазоне 0.0 — 1.0, указывающем уровень сжатия результирующего изображения. 1 означает отсутствие сжатия (наивысшее качество), а 0 — наивысшее сжатие (наименьшее качество).

Для получения дополнительной информации смотрите Документы Image Manipulator

Комментарии:

1. Как насчет изображений в последних моделях телефонов iPhone?