因此,我试图通过POS(热)打印机打印自动生成的HTML页面,我的应用程序是用PyQt5编写的,我戴着一个骇人的python脚本来生成HTML代码,但是在打印预览中这是一个巨大的空白页边距,并且打印后也出现在纸张上。我无法通过窗口调整左页边距,我所能做的就是编辑html代码以解决该问题。这是生成的html代码:
<!DOCTYPE html><head><title> Recipt #12345678 </title>
<style>
html,body {font-family: "Fake Receipt", sans-serif;white-space:nowrap;}
@page {
margin: 1cm;
}
</style>
</head><body><h3 >Dyestuff</h3>
<p >Colours, Threads & Chemicals <br/>
some@gmail.com | <b>+91 00000000000</b><br/>
<b>GSTIN</b>-000000000000000000 <br/>
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx</p><hr/><h8><b>Transaction Id</b></h8>: 1561324761<br/><h8><b>Date</b></h8>: Mon Jun 24 02:49:21 2019<br/><h8><b>Billed by</b></h8>: admin<br/><h8><b>Payment Type</b></h8>: current<br/><h8><b>Total Amount</b></h8>: 637.1759999999999<br/><h8><b>Client</b></h8>: 0<br/><br/><hr/><table ><tr><th>Product</th><th>HSN</th><th>Qty(U)</th><th>Rate/U</th><th>Tax</th><th>Total</th></tr><tr><td>Magenta Dark</td><td>GTI4</td><td>6.458Kgs</td><td>60</td><td>77.49600000000001</td><td>464.976</td></tr><tr><td>Normal Green</td><td>CAB8</td><td>8.2Kgs</td><td>20</td><td>8.200000000000001</td><td>172.2</td></tr></td></tr></table>
<br/><br/>
<b>GRAND TOTAL: </b>637.1759999999999 Rupees
<p style='font-size:10px;'><b>Note:</b> The grand total amt is inclusive of all taxes.</br>
Incase of any glitch in amount,tax,etcetera, contact the seller.</p>
</body></html>
右边距看起来像这样(注意:由于空白,没有右边距):
所以,我只是想提出一些建议,以修复HTML代码以使其正常工作。
注意:该页面在html浏览器中看起来不错,但在打印预览中却不好。
我尝试了@page {size:w h; margis}等都无济于事。
答案 0 :(得分:1)
您的 @page
媒体查询中的CSS margin
为1cm
。
这仅适用于打印,并负责您的左边距。
删除此选项会将您的文本移到左侧(也将其向上移一点)。
如果您仍然想要顶部边距,则可以将其更改为margin-top
。
答案 1 :(得分:1)
您应使用@media print
而不是@page
媒体查询来进行样式设置。
@media print { body { margin: 1cm; } }