为什么这个背景没有正确拼贴?

时间:2016-06-02 07:08:05

标签: javascript css reveal.js

我修改了reveal.js视差背景,因此每个PDF导出页面的大小调整为一次。但是,取决于reveal.js presentation size,平铺会搞砸。有时瓷砖高度稍微过大,而且这个错误会不断积累。

问题:

  • 是什么原因导致瓦片搞砸了?
  • 哪些演示文稿大小不会搞砸? (960x678有效,但不是960x700)
  • 如何修改reveal.js以便正确平铺所有演示文稿大小?

您可以在此处试用:

  • 在Chrome中打开以下链接并打开打印对话框( CTRL - P
  • 查看source code(相关代码位于index.html底部)

以下是混乱拼贴的屏幕截图:

enter image description here

最后,以下是我修改reveal.js的方法:

我更改了这一行:

dom.background.style.backgroundSize = config.parallaxBackgroundSize;

到此:

if ( isPrintingPDF() ) {
    var slideSize = getComputedSlideSize( window.innerWidth, window.innerHeight );

    // Dimensions of the PDF pages; copied from another part of reveal.js
    var pageWidth = Math.floor( slideSize.width * ( 1 + config.margin ) ),
        pageHeight = Math.floor( slideSize.height * ( 1 + config.margin  ) );

    dom.background.style.backgroundSize = pageWidth + 'px ' + pageHeight + 'px';
} else {
    dom.background.style.backgroundSize = config.parallaxBackgroundSize;
}

1 个答案:

答案 0 :(得分:0)

在reveal.js中,这会改变页面的大小:

        // Let the browser know what page size we want to print
        injectStyleSheet( '@page{size:'+ pageWidth +'px '+ pageHeight +'px; margin: 0;}' );

        // Limit the size of certain elements to the dimensions of the slide
        injectStyleSheet( '.reveal section>img, .reveal section>video, .reveal section>iframe{max-width: '+ slideWidth +'px; max-height:'+ slideHeight +'px}' );