bamlab / react-native-image-resizer

🗻 Resize local images with React Native
MIT License
1.59k stars 338 forks source link

Unable to convert .heic file #369

Closed jnnlcnjs closed 12 months ago

jnnlcnjs commented 1 year ago

Describe the bug Uploading .heic file returns [Error: Unable to load source image from path]

To Reproduce Steps to reproduce the behavior:

  1. Upload any .heic file

Observed behavior Uploading .heic file returns [Error: Unable to load source image from path]

Expected behavior Continue to convert the file like other image files

Screenshots N/A

Platform concerned:

Additional context Add any other context about the problem here.

Link to reproducible example https://.....

cyrilbo commented 1 year ago

Hi @jnnlcnjs, thanks for your feedback.

Can you give me more details about your issues ? Maybe a code snippet or the image. I have no issue on my side with heic pictures stored on the file system.

GaelCO commented 1 year ago

Hi, Some users have problems with heic images. I did some tests. The most part of .heic file works. But, I found a problematic image . The error log : Error: Unable to load source image from path

For information, I did my test on android and the android viewer can't load the file too. But Gimp on my PC can. The next week I'll try to test on a real iPhone and give an iPhone .heic.

I Zip the file, because heic format was not authorized by github : heic-file-sample.zip

GaelCO commented 1 year ago

My issue reported by ios users did not come from the image itself. It came from the path that didn't start with file://. This path is returned by another library. I workaround it by adding this prefix on iOS

taboulot commented 12 months ago

@GaelCO sorry for the issue & problem you are facing.

I think it is related to this issue #328. I have created a PR to fix it, actually in review: #381.

Can you please use this branch & tell me if it fixes the problem for you?

taboulot commented 12 months ago

@jnnlcnjs,

A lot of path/uri problem has been fixed in 3.0.6. Did a test here and everything works fine.

Here is how you can upload a HEIC image on your emulator:

./push-heic-android.sh
# Then open the app and you should be able to resize the uploaded image

Until you provide me a fully reproducible example, i close this issue for now.

GaelCO commented 12 months ago

Hi, the PR https://github.com/bamlab/react-native-image-resizer/pull/381 has fixed my uri issue on iOS. I have removed my workaround after update react-native-image-resizer to version 3.0.7. Great job. Thanks