Mit Python kann man schöne pdf-Dateien erzeugen und drucken.
Will man Text oder Variablen statt auf dem Bildschirm lieber auf einem bedruckten und schön formatierten Papier, bietet es sich an, eine pdf zu erzeugen und diese dann zu drucken. Alternativ könnte man auch eine HTML-Seite erzeugen und diese dann drucken.
Mit Python eine Datei über das Terminal drucken¶
python
import subprocess
subprocess.Popen(['lpr', 'dateiname'])
oder
python
from subprocess import call
call("lpr dateiname", shell=True)
Mit Python eine pdf-Datei erstellen¶
Eine vorinstalliertes Paket, das pdf-Dateien erzeugen kann heißt ReportLab.
Hier ein Beispiel:
```python
!/usr/bin/env python3¶
from reportlab.pdfgen import canvas from reportlab.lib.pagesizes import A4 from reportlab.lib.units import cm
Anlegen des PDF Dokuments, Seitengröße DIN A4 Hochformat)¶
pdf = canvas.Canvas('schuelerausweis.pdf',pagesize=A4)
Holen der Seitenabmessung, um den Inhalt davon abhängig zu positionieren.¶
breite, hoehe = A4
Der Nullpunkt des Dokuments ist unten links.¶
Text einfügen¶
pdf.setFont('Helvetica-Bold',20) pdf.drawCentredString(breite/2,hoehe-(2*cm),'dieser Text steht oben zentriert.') pdf.drawString(1*cm,1*cm,'Dieser Text steht links unten.')
Ein Bild einfügen¶
pdf.drawImage('pic.png',x=2*cm, y=2*cm, mask='auto',width=2*cm, height=3*cm)
Ein gefülltes Rechteck einfügen¶
pdf.setStrokeColorRGB(0,1,0) pdf.setFillColorRGB(0,0,0) pdf.rect((breite/2)-(3*cm),(hoehe/2)-(3*cm),6*cm,6*cm,fill=1)
Die PDF generieren und speichern¶
pdf.showPage() pdf.save() ```