Обрезать прямоугольник с фото камеры Экспо - PullRequest
0 голосов
/ 02 марта 2020

У меня есть этот экран камеры с использованием Camera from Expo: enter image description here

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

Итак, я пытаюсь справиться с измерением этого квадрата:

const handleSnapPress = async () => {
        const photo = await cameraRef.current.takePictureAsync();
        cardPrintRef.current.measure(async (fx, fy, width, height, px, py) => {
            const cropedImage = await ImageManipulator.manipulateAsync(
                photo.uri,
                [
                    {
                        crop: {
                            originX: fx,
                            originY: fy,
                            width: width,
                            height: height
                        }
                    }]);
        });
    };

Но результат странный. Если я печатаю размер изображения, используя photo.width \ photo.height, размер действительно отличается от моего измерения:

Я получил размер изображения 2376x3560 против квадрата измерения 287x540.

Как сделать мою фотографию того же размера, что и мой прямоугольник?

...