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 に答える