felvieira
4/29/2019 - 4:25 AM

Export DIV to PDF

import { $sel } from './_helpers';
import jspdf from 'jspdf';
import html2canvas from 'html2canvas';

export default function downloadCertificate() {
  const target = $sel('.certificado-container');
  console.log('TCL: downloadCertificate -> target', target);
  html2canvas(target).then(canvas => {
    //$("#previewBeforeDownload").html(canvas);
    const imgData = canvas.toDataURL('image/jpeg', 1);
    const pdf = new jspdf('landscape', 'pt', 'a4');
    const pageWidth = pdf.internal.pageSize.getWidth();
    const pageHeight = pdf.internal.pageSize.getHeight();
    const imageWidth = canvas.width;
    const imageHeight = canvas.height;

    const ratio =
      imageWidth / imageHeight >= pageWidth / pageHeight
        ? pageWidth / imageWidth
        : pageHeight / imageHeight;
    //pdf = new jspdf(this.state.orientation, undefined, format);
    pdf.addImage(
      imgData,
      'JPEG',
      0,
      0,
      imageWidth * ratio,
      imageHeight * ratio
    );
    pdf.save('invoice.pdf');
    //$("#previewBeforeDownload").hide();
    // $('#c-invoice').modal('hide');
  });
}