How to download web pages as PDF in React JS

Поделиться
HTML-код
  • Опубликовано: 1 дек 2024

Комментарии • 61

  • @SamGreen-n1l
    @SamGreen-n1l Год назад +1

    I love simple short tutorials that work. Thank you for this. Worked first time without any issues.

  • @ajayprakashpp7229
    @ajayprakashpp7229 Год назад +1

    I don't know how to express my gratitude to this video. You have given solution for a problem on which i have been wandering around for 2 days. Thank you ♥

  • @anthonyezeh7511
    @anthonyezeh7511 11 месяцев назад

    I was able to integrate it following your steps. Everything works as instructed.

  • @vivekjaiswal2422
    @vivekjaiswal2422 11 месяцев назад +2

    I have to download a scrollable div, but by using the above same logic I am unable to do it.
    I am getting only the current view port in pdf.☹

  • @skazzp
    @skazzp Год назад +1

    Great guide, everything worked from the first try, thank you

  • @rukaiyajahan1172
    @rukaiyajahan1172 Год назад +2

    Thank you so much. such a helpful video . Go ahead, all the best

  • @olufemiajibade
    @olufemiajibade 11 месяцев назад

    Thanks for this, worked at first try 💯

  • @g3zeck485
    @g3zeck485 9 месяцев назад +1

    Helo i have this error "incomplete or corrupt png file" Does anyone know the solution?

  • @abelmurua6980
    @abelmurua6980 Год назад

    Thank you so much! Since I am using AWS ElasticBeanslkt Amazon Linux 2023, I couldn't use Puppeteer because of their environment its based on 64 bits. This solved my PDF need, I spent 2 days trying to find a solution, I appreciate your input!! thank you!
    The only thing I noticed is that TABLE layout its somehow off, not showing the same thing as it does on browser. th (headers) had some top padding on the cell, or the titles it self are alinged to bottom. I tried with lots of tailwindcss rules to reset that but I couldn't make it work, everything else looked great! I just removed the bg color so you cant tell there is a ht space.! Thank you again

  • @sunidhichouhan4103
    @sunidhichouhan4103 Год назад +1

    how can we make text selectable in pdf
    ? please help me oue.

  • @minhtringuyen1267
    @minhtringuyen1267 10 месяцев назад

    I have issue with the tag svg it's not render correctly, can u help me about this issue.

  • @showhow6827
    @showhow6827 Год назад +1

    Great tutorial, simple and to the point. One major issue though. When the content is longer than the viewport or wider and or even when the you have the window resize to smaller one then the it will not convert the full content. Does anyone have an idea about solving this issue?

  • @ashavytla8886
    @ashavytla8886 2 месяца назад

    okay but can we download web pages into word document with all the css styles....??

  • @billyjoshuasalcedo3955
    @billyjoshuasalcedo3955 Год назад

    how can you optimize the downloading time? I'm having trouble into downloading the pdf because it takes around 5 seconds before downloading the pdf. I'm using useRef for the DivElement and is passing down the scale to 1 to lower the graphics but to no avail.

  • @SanjaySanjay-zg1jy
    @SanjaySanjay-zg1jy 9 месяцев назад

    I want to download in a new tab. How to do using ur code

  • @JamesYang-i4k
    @JamesYang-i4k Год назад

    Hi bro, thank you so much, i just have a little problem when i download the PDF my images dont render in it

  • @shubhamdas6519
    @shubhamdas6519 Год назад

    what if i am rendering the image from online link?

  • @rahulmohanty3822
    @rahulmohanty3822 4 месяца назад

    what is the font name ?

  • @niveditasingh7691
    @niveditasingh7691 10 месяцев назад

    If I need to add link to pdf, how does that work with this approach? @code pro

  • @MaharajanRavi
    @MaharajanRavi Год назад

    is there any other method to download as pdf with support svg images?

  • @PrakashA-e1i
    @PrakashA-e1i Год назад +2

    how to take print long web page ? more than 1 page

  • @tamimhossain4141
    @tamimhossain4141 6 месяцев назад

    great but how I download multiple page

  • @yeshthummer7256
    @yeshthummer7256 Год назад

    can i share a link using this package and save link and after save the pdf and open link from pdf ??

  • @hardikdangodara3272
    @hardikdangodara3272 10 месяцев назад +1

    thank you so much sir

  • @Pkcollects
    @Pkcollects 11 месяцев назад

    scrollable content not capturing

  • @abdulragib6004
    @abdulragib6004 Год назад

    i follow same approach but it didn't work

  • @abhishekmeena2985
    @abhishekmeena2985 Год назад

    thank you, it was helpful

  • @shuvomajumder5565
    @shuvomajumder5565 10 месяцев назад +1

    I got an error. Uncaught (in promise) Error: Attempting to parse an unsupported color function "oklch".

  • @DeveloperInside
    @DeveloperInside Год назад

    Can we select text and copy in generated pdf

    • @CodePro-Jayanth
      @CodePro-Jayanth  Год назад +1

      It's not possible in this approach, for that we need to use react-pdf library. In few days I will post the video for that

  • @kimothe2nd
    @kimothe2nd 4 месяца назад

    That did NOT download the cv..

  • @Arul_Sekar.S
    @Arul_Sekar.S 2 месяца назад

    I have HTML link that link can convert into pdf

  • @kleatech6562
    @kleatech6562 Год назад +1

    please can you share the github link or the blog link

    • @jorgegarnicablanco8136
      @jorgegarnicablanco8136 Год назад

      const downloadPDF = () => {
      const input = quoteRef.current;
      html2canvas(input as HTMLElement).then((canvas) => {
      const imgData = canvas.toDataURL('image/png');
      const pdf = new jsPDF('p', 'mm', 'a4', true);
      const pdfWidth = pdf.internal.pageSize.getWidth();
      const pdfHeight = pdf.internal.pageSize.getHeight();
      const imgWidth = canvas.width;
      const imgHeight = canvas.height;
      const ratio = Math.min(pdfWidth / imgWidth, pdfHeight, imgHeight);
      const imgX = (pdfWidth - imgWidth * ratio) / 2;
      const imgY = 30;
      pdf.addImage(
      imgData,
      'PNG',
      imgX,
      imgY,
      imgWidth * ratio,
      imgHeight * ratio
      );
      pdf.save('cotizacion.pdf');
      });
      };

  • @rodrigocastro3934
    @rodrigocastro3934 Год назад +4

    This is not the correct approach. This is only converting the web into an image, and then paste it on a pdf. Consequently: final pdf has no text you can select and/or copy, it is just an image; and second, if you have several pages this method does not work. Does anyone has a correct solution? Please leave it bellow 🙏🏻

    • @CodePro-Jayanth
      @CodePro-Jayanth  Год назад +1

      With this library you can create multi page pdf as well

    • @Pkcollects
      @Pkcollects 11 месяцев назад

      @@CodePro-Jayanth how

    • @varunsalat619
      @varunsalat619 10 месяцев назад

      yes how? I was creating a dynamic invoice pdf that's why came here..

    • @anushkanemishte4538
      @anushkanemishte4538 2 месяца назад

      Please tell how

  • @varadtote2017
    @varadtote2017 Год назад

    I got it right but image quality is too bad

  • @kanibis811
    @kanibis811 Год назад

    thank you @code pro, that's what I needed. I wanted to know about the step guide that you created - have you used animation for rendering the steps one-by-one? Please do reply, I'm in the learning phase and it'd really help me. Also can you please share step-guide's github link?

    • @CodePro-Jayanth
      @CodePro-Jayanth  Год назад

      Thank you, actually I have created animation for rendering step by step

  • @lubomirsevcik2252
    @lubomirsevcik2252 10 месяцев назад

    thx man

  • @kanishkakodithuwakku1944
    @kanishkakodithuwakku1944 4 месяца назад

    thanx brother

  • @anik1612
    @anik1612 Год назад +1

    informative

  • @khaouitiabdelhakim
    @khaouitiabdelhakim Год назад

    Thanks alot. th source code pleaaaaaaaaaaaaaaase!

  • @stan-beats
    @stan-beats Год назад

    thx

  • @shubhampatil5935
    @shubhampatil5935 2 месяца назад

    grow up from beginner mindset man.

  • @roufhasan
    @roufhasan 11 месяцев назад

    I am facing this error: Uncaught (in promise) Error: Attempting to parse an unsupported color function "oklch"
    html2canvas.js?v=82c7c37b:1685

  • @lasith123
    @lasith123 9 месяцев назад +2

    const handleDownloadPDF = () => {
    const input = pdfRef.current;
    html2canvas(input).then((canvas) => {
    const imgData = canvas.toDataURL('image/png');
    const pdf = new jsPDF('p', 'mm', 'a4', true);
    const pdfWidth = pdf.internal.pageSize.getWidth();
    const pdfHeight = pdf.internal.pageSize.getHeight();
    const imgWidth = canvas.width;
    const imgHeight = canvas.height;
    const ratio = Math.min(pdfWidth / imgWidth, pdfHeight / imgHeight);
    const imgX = (pdfWidth - imgWidth * ratio) / 2;
    const imgY = 30;
    pdf.addImage(
    imgData,
    'PNG',
    imgX,
    imgY,
    imgWidth * ratio,
    imgHeight * ratio,
    );
    pdf.save('invoice.pdf');
    });
    };

  • @billyjoshuasalcedo3955
    @billyjoshuasalcedo3955 Год назад +2

    how can you optimize the downloading time? I'm having trouble into downloading the pdf because it takes around 5 seconds before downloading the pdf. I'm using useRef for the DivElement and is passing down the scale to 1 to lower the graphics but to no avail.