2011-11-12 11 views
7

Le stampanti Brother PTouch serie QL sono dotate di interfacce USB e sono in grado di stampare codici QR. Ecco un modello tipico:Interfaccia con una stampante PTouch Brother?

http://www.ptouchdirect.com/ptouch/new_ql570.html

Come posso preparare ingresso (formato cioè) per queste stampanti e parlare con loro direttamente dal mio programma? Sono interessato alle piattaforme Windows, Mac, Linux. Qualsiasi linguaggio, una libreria Python sarebbe perfetta.

Non voglio generare output (ad esempio CSV) e chiedere all'utente di caricarlo nell'applicazione fornita da Brother.

+0

Hai fatto progressi in questo? – user391339

risposta

4

Ho utilizzato la libreria iText per la stampa di codici a barre QR. Può generare l'immagine del codice a barre e inserirla in un file PDF, che l'utente può inviare alla stampante. È una libreria basata su Java e c'è anche una porta .NET disponibile.

+0

Come si ridimensiona l'output sulla dimensione appropriata per la stampante? La tua biblioteca ha il supporto per il word wrapping dato una larghezza dell'output dell'etichetta? – user391339

4

Non posso parlare di Windows, ma Brother ha tradizionalmente un supporto Linux molto completo. Here's the driver list for the PTouch models. Con questi driver installati, è possibile stampare tramite CUPS (tramite i comandi lp o lpr) utilizzando qualsiasi formato di file darn trovato conveniente per l'utente.

OS X utilizza anche CUPS, quindi la stampa sarebbe molto simile a quella di Linux ... dato che è possibile trovare i driver corretti.

2

Esiste un pacchetto brotherprint, parte di PyPI:

https://pypi.python.org/pypi/brotherprint/0.1.1

Sarà presumibilmente maniglia invio di prese, ma non l'ho provato:

import re 
'''Brother Python EscP Command Library 
Description: 
A collection of functions to more easily facilitate printing to the Brother QL label 
printers without having to memorize the ESC/P commands. Also handles sending to sockets 
for you. 
''' 
class BrotherPrint: 
font_types = {'bitmap': 0, 
'outline': 1} 
def __init__(self, fsocket): 
self.fsocket = fsocket 
self.fonttype = self.font_types['bitmap'] 

vedi: https://github.com/fozzle/python-brotherprint/blob/master/brotherprint/brotherprint.py