Pelo que entendi você está gerando o PDF no frontend (client) e essa não é a abordagem correta, geração de PDF ou qualquer operação que tem um "esforço" computacional maior, deve ser processado no backend (servidor).
Se você já tiver um backend em NodeJS por exemplo, vc pode utilizar as bibliotecas: node-html-pdf, pdfkit, PhantomJS etc.. tem várias.
Gera o PDF no servidor e retorna pro seu frontend somente a URL por exemplo do PDF, ou o stream do PDF para que o próprio browser processe o PDF e dê a opção para o usuário abrir ou salvar.
Espero ter ajudado!