德国大神开发的门票生成工具
#!/usr/bin/env Python# -*- coding: utf-8 -*-
import scribus
#################################
# Einstellungen:
# Anzahl an Karten:
anzahl = 48
# Anzahl der Karten pro Seite:
anzahl_pro_seite = 16
# Anzahl der Spalten:
spalten = 2
# Versatz der rechten Karte von der linken, bzw. von der unteren zur Oberen
abstand_x = 90.89
abstand_y = 33.5975
# Absatzstile für die Textbox mit der Nummer:
stil = "Nummer"
# Musterseite mit dem Layout der Karte:
musterseite = "Karten"
##################################
# Beginn Skript:
# Informationen über das Textfeld beschaffen:
x,y = scribus.getPosition()
breite, hoehe = scribus.getSize()
zaehler = int(scribus.getText())
anzahl_stellen = len(scribus.getText())
# Verschiedene Variablen festlegen...
anzahl_pro_spalte = anzahl_pro_seite / spalten
x_neu = x
y_neu = y + abstand_y
zaehler_seite = 0
zaehler_spalte = 1
while zaehler != anzahl:
while zaehler_seite < anzahl_pro_seite:
while zaehler_spalte < anzahl_pro_spalte:
zaehler = zaehler + 1
zaehler_spalte = zaehler_spalte + 1
rahmen = scribus.createText(x_neu, y_neu, breite, hoehe)
scribus.setText(str(zaehler).zfill(anzahl_stellen), rahmen)
scribus.setStyle(stil, rahmen)
y_neu = y_neu + abstand_y
if zaehler == anzahl:
break
if zaehler == anzahl:
break
x_neu = x_neu + abstand_x
y_neu = y
zaehler_seite = zaehler_seite + zaehler_spalte
zaehler_spalte = 0
if zaehler < anzahl:
zaehler_seite = 0
zaehler_spalte = 0
scribus.newPage(-1, musterseite)
scribus.gotoPage(scribus.pageCount())
y_neu = y
x_neu = x
页:
[1]