0

我正在开发一个 django 应用程序。我有一个显示项目日志的页面,每个项目都有一个“打印标签”链接。目前,单击该链接会在弹出屏幕中显示该特定项目的标签,但不会将标签发送到打印机。“打印标签”链接后面的查看功能如下图所示:

@login_required
def print_label(request, id):
     s = Item.objects.get(pk = id)
     return render_to_response('templates/label.html', {'s': s}, context_instance=RequestContext(request))

标签的 HTML 如下所示:

{% load humanize %}
<head>
    <style type="text/css">
        div{
            min-width: 350px;
            max-width: 350px;
            text-align: center;
        }
        body{
            font-family: Arial;
            width: 370px;
            height: 560px;
            text-align: center;
        }
    </style>
</head>
<body>
    <div id="labelHeader">
        <img src="{{ STATIC_URL }}img/label-header.png" width="350px">
    </div>
    <hr/>
    <p></p>
    <div id="destinationAddress">
        <span style="font-size: xx-large; font-weight: bold;">{{ s.item_number }}</span> 
        </p>
        DESTINATION:
        <br/>
        <strong>{{s.full_name}}</strong><br/>
        <strong>{{ s.address }}</strong><br/>
        <strong>{{s.city}}, {{s.state}}</strong><br/>
        <strong>Tel: {{s.telephone}}</strong>
    </div>
    <p></p>
    <hr/>
    <div id="labelfooter">
        <img src="{{ STATIC_URL }}img/label-footer.png" width="350px">
    </div>
</body>

我的问题是,我怎样才能将显示的标签发送到具有相同功能的打印机?我研究并找到了一些库(如 xhtml2pdf、webkit2png、pdfcrowd 等),但它们会创建标签的 pdf 或图像文件,我必须将其发送到打印机。是否可以直接发送到打印机而不创建标签的 pdf 副本?如果是这样,请告诉我如何实现这一目标。

非常欢迎您的回答和建议。谢谢你。

4

1 回答 1

3

据推测,由于这是一个 Django 应用程序,它是您需要使用的客户端打印机。这样做的唯一方法是告诉用户的浏览器进行打印。为此,您需要使用 Javascript window.print():.

于 2013-08-28T10:13:49.333 回答