# 3. Druckerkonzept

Client-Script sendet die Aufkleber an einen Etikettendrucker ([Modell Brother QL-720NW](https://things.fablabchemnitz.de/#/document/view/5df2694b-a6be-405e-a6aa-e0f39d744c44/content))

Die im Schritt [2. Etikettenkonzept](https://wiki.stadtfabrikanten.org/books/inventar-und-handbucher/page/2-etikettenkonzept "2. Etikettenkonzept") erzeugten Aufkleberdateien werden durch das InkScape-PlugIn auf dem Dateisystem abgelegt. Das folgende Script kann genutzt werden, um diese Aufkleber dann auf einem Brother QL-720NW auszudrucken. Diese Funktionalität ist auch Teil des InkScape Plugins. Jedoch kann es auch separat genutzt werden. Wir nutzen dafür das Betriebssystem Ubuntu 20 LTS, den offiziellen Treiber von Brother und eine spezielle Python-Bibliothek namens "[brother-ql](https://pypi.org/project/brother-ql)". Zunächst muss auf dem Rechner, an dem der Etikettendrucker angeschlossen ist, eine entsprechende Installation der Treiber und des Python-Pakets vorgenommen werden.

## Brother QL-720NW auf Windows/Linux installieren

Die Treiber können unter [https://support.brother.com/g/b/downloadtop.aspx?c=de&amp;lang=de&amp;prod=lpql720nweuk](https://support.brother.com/g/b/downloadtop.aspx?c=de&lang=de&prod=lpql720nweuk) heruntergeladen werden

## Ausdrucken von Labels mit brother\_ql

Wir nutzen nicht das Standardwerkzeug "lp" bzw. "lpr" zur Druckausgabe, da dies schlecht einstellbar ist. Stattdessen nutzen wir das Python-Paket [https://pypi.org/project/brother-ql](https://pypi.org/project/brother-ql/)

**brother\_ql installieren (pip notwendig)**

```bash
cd ~/
sudo apt install python3-pip
python -m venv venv
~/venv/bin/pip3 install --upgrade brother_ql
```

**Verfügbare Drucker listen**

```bash
~/venv/bin/brother_ql --backend pyusb discover
```

Für Windows-Systeme benötigen wir zusätzlich **libusb →** Download [libusb-win32-devel-filter-1.2.6.0.exe](https://sourceforge.net/projects/libusb-win32/files/libusb-win32-releases/1.2.6.0/)

[![grafik.png](https://wiki.stadtfabrikanten.org/uploads/images/gallery/2025-05/scaled-1680-/XCdXzcOUnIXUskTi-grafik.png)](https://wiki.stadtfabrikanten.org/uploads/images/gallery/2025-05/XCdXzcOUnIXUskTi-grafik.png)

**Normalen Nutzern außer root Zugang zum Drucker erlauben (Linux)**

Das fixt das Problem "<span class="js-issue-title">usb.core.USBError: \[Errno 13\] Access denied (insufficient permissions)</span>":

```bash
echo 'SUBSYSTEM=="usb", ATTR{idVendor}=="04f9", ATTR{idProduct}=="2044", MODE="666"' > /etc/udev/rules.d/99-garmin.rules && sudo udevadm trigger
```

**PNG ausdrucken**

Größen → 696 px sind 62 mm

```bash
#Linux
brother_ql -m QL-720NW --backend pyusb --printer usb://04f9:2044 print -l 62 --600dpi -r auto /home/tomate/Downloads/InventorySticker/Holzwerkstatt/1_Bandsäge_LB1200F_von_Makita.png
 
#Windows
brother_ql -m QL-720NW --backend pyusb --printer usb://04f9:2044 print -l 62 --600dpi -r auto C:\Users\tomate\Desktop\InventorySticker\1_Bandsäge_LB1200F_von_Makita.png
```

**Troubleshooting**

**ANTIALIAS Fehler beseitigen**

Die Bibliothek ist veraltet und muss manuell editiert werden. Dazu bearbeiten wir:

```bash
sudo vim ~/venv/lib/python3.13/site-packages/brother_ql/conversion.py
```

Siehe [https://github.com/pklaus/brother\_ql/pull/169/commits/324d5c833e62e63778060aeb5287ec97187de95f](https://github.com/pklaus/brother_ql/pull/169/commits/324d5c833e62e63778060aeb5287ec97187de95f)