diff --git a/js/reveal.js b/js/reveal.js index 6e6c12b8..49b2e7cd 100644 --- a/js/reveal.js +++ b/js/reveal.js @@ -360,12 +360,6 @@ // Update all backgrounds updateBackground( true ); - // Special setup and config is required when printing to PDF - if( isPrintingPDF() ) { - removeEventListeners(); - setupPDF(); - } - // Notify listeners that the presentation is ready but use a 1ms // timeout to ensure it's not fired synchronously after #initialize() setTimeout( function() { @@ -381,6 +375,20 @@ } ); }, 1 ); + // Special setup and config is required when printing to PDF + if( isPrintingPDF() ) { + removeEventListeners(); + + // The document needs to have loaded for the PDF layout + // measurements to be accurate + if( document.readyState === 'complete' ) { + setupPDF(); + } + else { + window.addEventListener( 'load', setupPDF ); + } + } + } /**