从浏览器打印到Brother标签打印机

Ben*_*air 8 javascript browser printing

我想从网络浏览器打印Brother标签打印机的标签.我知道DYMO有一个JavaScript框架,可以简化浏览器的打印.但我的客户使用Brother标签打印机,所以我需要让它工作.

我一直在做一些测试和一些搜索,令人惊讶的是,关于这个主题的信息很少.

到目前为止,我唯一获得成功的浏览器是谷歌浏览器,因为它似乎不打印页眉和页脚.我已经安装了打印机/驱动程序,并创建了一个定制的自定义纸张尺寸,尺寸为62 x 29毫米.

自定义纸张尺寸

当我尝试打印时,它将文本分成5个标签.我正在尝试打印的页面上有以下文字:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8" />
    <title>Print</title>
</head>
<body>

<p style="margin: 0; padding: 0; line-height: 13px; font-size: 11px; font-family: Arial; font-weight: normal; border: 1px solid #000;">Line 1<br />
Line 2</p>

</body>
</html>
Run Code Online (Sandbox Code Playgroud)

但是从打印阙样本中可以看到它打印了5页.

自定义纸张尺寸

有没有人在此之前解决这个问题或有任何建议.


UPDATE

将上面第一个屏幕截图中列出的边距更改为0后,将其缩小到两页.但它周围仍有很大的差距:

2页

Dam*_*zyk 4

这个答案并不能100%解决你的问题。我已经使用自定义纸张设置对 Safari 进行了测试 - 与您的示例中的设置相同。我正在针对打印为 PDF 进行测试,因此也许使用特定的打印机驱动程序,它的行为会有所不同。您的示例 CSS 和 HTML 缺少边距和填充重置。这是@media print 的示例:

@media print {
    body, html, p {
        margin: 0pt !important;
        padding: 0pt !important;
    }
    @page {
       margin: 0pt !important;
       padding: 0pt !important;
    }
}
Run Code Online (Sandbox Code Playgroud)

通过此设置,一页上有 2 行文本,悬停时仍有一些边距无法减少到 0。