所以上周我部署了一个应用程序,在一切正常工作之后,基本上你从API中获取了大量数据,这些数据被格式化为表格,并且有一个特定的打印css可以很好地打印它。
一切都工作正常,即使在我检查了一些东西的某些日子之后,今天我收到通知说打印视图完全搞砸了,去检查并且它搞砸了。
没有更改css代码甚至是相关页面上的代码。基本上问题是,在普通的浏览器视图中,一切都运行正常,即使您模拟打印视图,它也会正确显示,但问题会在您实际打印时开始! (或弹出镶边打印预览),所有文字都太大而且重叠,因此单页打印在2页上。
我检查并重新检查,代码与工作时的代码完全相同。 我尝试使用最新版本的Chrome和Firefox进行打印,同时打印2页并缩放内容。
我使用了Bootstrap v3.3.7,应用程序是用angularJS制作的。
我尝试了@media print
之类的* {transition: none !important}
内容
我在stackoverflow上找到其他主题,但没有任何效果。
问题不仅仅是字体大小,我目前正在将打印@media中的所有字体大小从px更改为pt,但div也会缩放,我需要更改col-xs-6中的某些类到col-xs-4,以获得div的正确位置和大小。
我注意到的唯一的东西给了我一个星期前的CORRECT打印,设置了Chrome中的打印设置,SCALE = 44或更低,44以下内容很小但一切都正确,放置文本和divs,也许这会告诉你一些我不知道的事情。
对于文本墙感到抱歉,我甚至不知道要诚实地发布什么代码,因为之前一切正常并且css页面很大,我正在抓住可能发生的事情的想法。
编辑:解决方案 通过简单地将所有打印规则从像素更改为点来解决,以便在每个浏览器上正确打印,遗憾的是没有找出它停止工作的原因
答案 0 :(得分:0)
尝试将您的.ts文件添加到内嵌.css
popupWinindow.document.write('<html><head><style>css here...</style> QR Code </head><body onload="window.print()">' + innerContents + '</html>');