Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Image component fails to render certain images, whereas the regular <img /> tag does render them #2651

Closed
mubin86 opened this issue Feb 18, 2024 · 8 comments · Fixed by #2687

Comments

@mubin86
Copy link

mubin86 commented Feb 18, 2024

Describe the bug
We are encountering an issue with rendering images in our PDF documents. Specifically, certain images are consistently missing from the rendered PDF output, while others render perfectly without any problems. We have attempted to render the images using both the Buffer and valid image URL approaches as outlined in the documentation, but neither method has resolved the issue. Upon attempting to render the images, I saw that it takes up a certain area in the PDF space, but it does not actually render that image. This behaviour is consistent across multiple attempts.

To debug the issue, I pasted the Base64 containing the image into a React playground using a regular <img /> tag, and it appeared and functioned correctly. However, when I pasted the same Base64 into the react-pdf playground https://react-pdf.org/repl, the image failed to appear. It's worth noting that the image size is only 3MB, and there are no CORS issues to account for. Despite these observations, the image still does not render within the react-pdf playground.

Here I am attaching screenshot for your reference.
Screenshot 2024-02-18 at 5 17 08 PM
Screenshot 2024-02-18 at 5 29 29 PM

To Reproduce
To identify the issue, simply paste the Base64 from here https://drive.google.com/file/d/1lwIPXb7rIlQSB6Fqf-CbZ8DF7T7Wq45Z/view?usp=sharing within a regular <img /> tag in any React playground. Additionally, paste the same Base64 in the https://react-pdf.org/repl react-pdf playground using the custom <Image /> component from the library. This will allow you to easily visualize the problem.

Desktop (please complete the following information):

  • OS: MacOS 13.0
  • Browser chrome
  • React-pdf version 3.3.8
@mubin86 mubin86 changed the title react-pdf Image component fails to render certain images, whereas the regular <img /> tag does render them Image component fails to render certain images, whereas the regular <img /> tag does render them Feb 18, 2024
@krishna-404
Copy link

Duplicate of #2639

@dmitryTurov
Copy link

I suppose if an image has geolocation metadata attached jay-peg fails to parse it. opened the related issue diegomura/jay-peg#4

@dmitryTurov
Copy link

dmitryTurov commented Feb 22, 2024

as a workaround
"resolutions": { "@react-pdf/image": "<2.3.2" }
to use jpeg-exif instead of jay-peg

upd: still facing issues. next workaround - convert jpeg into png

@nikischin
Copy link

nikischin commented Mar 8, 2024

I am also facing this issue with any JPEG image in Safari under Mac OS X. Would be happy to see a fix soon, thank you!

"overrides": {
    "@react-pdf/image": "<2.3.2"
},

is unfortunately not working for me and does even break more of the logic. I might also need to convert pictures to png, would be a nice feature for my image service to support, though is not so easy to implement as it does sound.

@PelosiTech
Copy link

Add this

"resolutions": {
"@react-pdf/layout": "3.6.4",
"@react-pdf/textkit": "4.3.0",
"@react-pdf/image": "2.2.2",
"@react-pdf/pdfkit": "3.1.2"
}

Will fix a lot of issues for everyone.

@mubin86
Copy link
Author

mubin86 commented Apr 4, 2024

@diegomura Still facing this weird issue with the latest version 3.4.2. Its happening for a long time so would you mind taking a quick look into it?

@anantbansa1
Copy link

@diegomura Still facing this weird issue with the latest version 3.4.2. Its happening for a long time so would you mind taking a quick look into it?

I am also facing the same issue on version 3.4.4. did you find any solution

@jc-wow
Copy link

jc-wow commented Jun 2, 2024

yes, I encounted the same problem in version 2.5.0, I replaced Image component with normal img tag, it works!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

7 participants