首页 文章

PNG使用PhantomJS和节点幻像模块进行半渲染?

提问于
浏览
1

我在使用PhantomJS和phantom将网页呈现为PDF时遇到了问题 .

我注意到的是,虽然SVG和JPG将"fully"加载到生成的PDF中,但PNG图像不会,但仅限于它们在文档中的首次出现 . 换句话说,第一图像部分褪色,然后后续图像根本不褪色 .

我检查了 onResourceLoaded 回调,图像从服务器正确加载 . 我试图在_1440294中包装 page.render (正如许多人在其他问题中建议的那样)无济于事 .

这是一个已知的问题?有没有更好的解决方法来解决淡出的PNG?不幸的是,在这个项目中,我无法控制进入我的图像类型 .

2 回答

  • 1

    我遇到了完全相同的问题,并意外地发现在所有元素上强制使用边框颜色可以解决问题 . 在我的例子中,受影响/褪色的元素是图像(jpg)和图表 .

    所以,像

    * {
        border-color: black !important;
    }
    
  • 0

    JPG也会出现此问题 . 我使用 PhantomJS (通过 html-pdf 包)和 wkhtmltopdf 将HTML文件转换为PDF时遇到此问题 .

    使用PhantomJS,我注意到该问题与在其他元素的边框中使用 rgba() 的透明颜色有关 . 我只是用HEX代码替换那些透明颜色,透明度问题已经消失 .

    简而言之,删除任何 rgba() 表达式,特别是如果它们使用透明度 .

相关问题