Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

Crop result wrong on iOS 16.3

Đang mở
#163 4 bình luận 0 reaction 0 người được giao Xem trên GitHub

Chưa có ai nhận issue này.

Đánh giá

Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức phù hợp với người mới
48/100
Loại issue
Lỗi
Độ rõ ràng
Khá rõ ràng
Mức độ hoạt động
Ít trao đổi
Công nghệ
ios, javascript, react-native
Lĩnh vực
mobile

Hướng nghiên cứu

Bắt đầu từ entry point handlePress và lệnh gọi ImageEditor.cropImage của nó, sau đó so sánh URI hình ảnh do react-native-vision-camera tạo ra với URI do expo-image-picker tạo ra trong môi trường iOS được liệt kê. Tái hiện thao tác crop bằng các tỷ lệ và dữ liệu crop được cung cấp; được xem là hoàn tất khi kết quả khớp với vùng đã chọn trên iOS mà không gây regression trên các nền tảng khác.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

Environment

Phisical Device: iPhone 13 Pro Max
OS: iOS 16.2.7

Project:
"react-native": "0.74.3",
"@react-native-community/image-editor": "^4.2.0",
"expo": "~51.0.23",
"react-native-vision-camera": "^4.5.1",

Description

The crop result is outside what was expected

*This code works perfectly in all other devices/emulators and OS versions, for both Android, iOS.

This bug only happen when I got a picture from react native vision camera, when picked with expo-image-picker, it works fine!

The green toast in end of the video is:
Original Image Height and Image Width

Image crop area Height and Width
Position X and Y above the Image crop area

https://github.com/user-attachments/assets/ab1b5711-82ed-4dcc-88b7-6cec8b45e4f8

Reproducible Demo

  const handlePress = async () => {
    try {
      setTranscriptionLoading(true);
      const widthRatio = image.width / imageLayout.width;
      const heightRatio = image.height / imageLayout.height;

      const cropData: ImageCropData = {
        offset: { x: cropX.value * widthRatio, y: cropY.value * heightRatio },
        size: { width: cropWidth.value * widthRatio, height: cropHeight.value * heightRatio },
        resizeMode: "cover",
        format: "webp",
        quality: Platform.OS === "ios" ? 0.5 : 0.9,
        includeBase64: false,
      };

      const croppedImageUri: CropResult = await ImageEditor.cropImage(image.uri, cropData);

      handleTranscription(croppedImageUri);
    } catch (error) {
      console.error("Crop Error", error);
      Toast.show({ type: "error", text1: "Erro ao processar imagem" });
    }
  };
Ngôn ngữ chính
Kotlin
Star
447
Fork
118
Merge trung bình
1 ngày 11 giờ
Pull request đã merge (30 ngày)
4

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của callstack/react-native-image-editor

Tất cả issue của callstack/react-native-image-editor

Issue tương tự

Thêm issue về Kotlin

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.