Diese Seite listet Befehle auf, die sich auf das Scribus-Dokument und seine Eigenschaften beziehen.
closeDoc()
Schließt ohne weitere Nachfrage das aktuell geöffnete Dokument.
Gibt NoDocOpenError
zurück, wenn kein Dokument geöffnet wurde.
docChanged(bool)
Aktiviert bzw. deaktiviert den Speichern-Button in der Scribus Button-Leiste und den entsprechenden Eintrag im Menü. Diese Funktion muss dann aufgerufen werden, wenn Sie ein Dokument verändern, da Scribus nicht von sich aus kontrolliert, ob das Dokument durch den Aufruf eines Scripts verändert wurde – Sie beugen also Datenverlust vor.
newDoc(Abmessungen, Rahmen, Ausrichtung, ersteSeitenNummer, Einheit, doppelseitig, ArtErsteSeite) → bool
Erzeugt ein neues Dokument und gibt true zurück, wenn dies erfolgreich war. Die oben eingeführten Parameter haben folgende Bedeutung:
PAPER_<Papier_Typ>
sind ebenfalls nutzbar, z. B. PAPER_A4
PORTRAIT
→ HochformatLANDSCAPE
→ QuerformatUNIT_MILLIMETERS
weitere Eigenschaften sind weiter oben zu findenFACINGPAGES
→ DoppelseitigNOFACINGPAGES
→ EinseitigFIRSTPAGELEFT
→ Beginne mit linker Seite als erster SeiteFIRSTPAGERIGHT
→ rechte Seite ist die erste Seite
Die Längenangaben müssen in der angegeben Maßeinheit für das Dokuments ausgedrückt werden. PAPER_*
-Konstanten sind in Punkt (pt) definiert, dies ist problematisch, wenn Sie mit anderen Maßeinheiten als Punkt arbeiten möchten – im untenstehenden Beispiel wird das gewünschte A4-Format durch das Tupel (210, 297) definiert, das nichts anderes ist, als die Angabe des Formats in – der im Beispielskript als Standardeinheit gesetzten – Millimetern.
Ein Beispiel:
# -*- coding: utf-8 -*- import scribus scribus.newDoc((210, 297), (14.1, 14.1, 14.1, 14.1), scribus.PORTRAIT, 1, scribus.UNIT_MILLIMETERS, scribus.FACINGPAGES, scribus.FIRSTPAGERIGHT) scribus.newPage(-1) scribus.newPage(-1) scribus.newPage(-1)
Dieses Skript erzeugt ein vierseitiges (1 + 3) Dokument, in dem beginnend mit einer rechten Seite als ersten Seite jeweils zwei Seiten eine Doppelseite bilden. Die Maßeinheit ist Millimeter, daher gibt 210mm × 297mm eine A4-Seite an, der Rahmen ist an allen Seiten 14,1mm vom Seitenrand entfernt.
openDoc("DokumentName")
Öffnet das Dokument namens „DokumentName“ – wirft ScribusError
, wenn das angegebene Dokument nicht geöffnet werden konnte.
Anwendungsbeispiel:
# -*- coding: utf-8 -*- import scribus scribus.openDoc("/home/nutzer/Schreibtisch/Dokument.sla")
saveDoc()
Speichert das momentan geöffnete Dokument unter seinem bisherigen Pfad (und Namen) ab. Wenn dies erfolgreich war, gibt die Funktion true zurück. Wenn das Dokument vorher noch nicht gespeichert wurde, öffnet sich der Datei-speichern-Dialog. Ob das Speichern fehlschlägt, ist zurzeit nicht feststellbar. Das Äquivalent zu dieser Funktion in der Scribus-GUI ist Datei → Speichern.
saveDocAs("DokumentName")
Speichert das Dokument unter dem neuen Namen DokumentName (sowohl absolute als auch relative Pfadangaben möglich).
Wirft ScribusError, wenn das Speichern fehlschlägt. Das Äquivalent zu dieser Funktion in der Scribus-GUI ist Datei → Speichern unter….
getDocName() → String
Mithilfe von getDocName
lässt sich herausfinden, wo ein Dokument gespeichert ist:
Das folgende Skript gibt den Verzeichnispfad des Dokuments oder – falls keins geöffnet ist – eine Fehlermeldung aus.
# -*- coding: utf-8 -*- import scribus if scribus.haveDoc(): scribus.messageBox('Geöffnetes Dokument', scribus.getDocName(), scribus.ICON_INFORMATION) else: scribus.messageBox('Kein geöffnetes Dokument', 'Kein Dokument geöffnet!', scribus.ICON_WARNING)
getUnit() → integer (Scribus Maßeinheiten-Konstante)
Gibt die Maßeinheit des Dokuments zurück. Der Rückgabewert ist eine der UNIT_*-Konstanten:
Rückgabewert | UNIT-Konstante | Maßeinheit |
---|---|---|
0 | UNIT_POINTS | Punkt (pt) |
1 | UNIT_MILLIMETERS | Millimeter (mm) |
2 | UNIT_INCHES | Zoll (in) |
3 | UNIT_PICAS | Pica-Punkt (p) |
4 | UNIT_CM¹ | Zentimeter (cm) |
5 | UNIT_CICERO¹ | Cicero (c) |
¹) die letzten beiden Werte tauchen in der offiziellen Dokumentation nicht auf, sind aber vorhanden.
Die Werte der einzelnen UNIT_*-Konstanten lassen sich mit folgendem Script anzeigen:
# -*- coding: utf-8 -*- import scribus scribus.messageBox("Maßeinheiten", "<table><tr><td>"+str(scribus.UNIT_POINTS)+"</td><td>Punkt</td><td>pt</td></tr><tr><td>"+str(scribus.UNIT_MILLIMETERS)+"</td><td>Millimeter</td><td>mm</td></tr><tr><td>"+str(scribus.UNIT_INCHES)+"</td><td>Zoll</td><td>in</td></tr><tr><td>"+str(scribus.UNIT_PICAS)+"</td><td>Picas</td><td>p</td></tr><tr><td>"+str(scribus.UNIT_CM)+"</td><td>Zentimeter</td><td>cm</td></tr><tr><td>"+str(scribus.UNIT_CICERO)+"</td><td>Cicero</td><td>c</td></tr></table>")
haveDoc() → bool
Gibt true zurück, wenn ein Dokument geöffnet ist.
loadStylesFromFile("dateiname")
Lädt Absatzstile aus dem Scribus-Dokument unter "dateiname" ins gerade geöffnete Dokument.
saveDocAs("Autor", "Info", "Beschreibung") → bool
Setzt die Meta-Daten „Autor“, „Info“, „Beschreibung“ (Datenformat string) und gibt bei Erfolg true zurück. Diese Meta-Daten können auch in der GUI unter Dokument einrichten → Dokumentinformationen bearbeitet werden.
setMargins(links, rechts, oben, unten)
Legt die Abstände der Rahmen des Dokuments fest, links, rechts, oben und unten, angegeben in der Einheit des Dokuments, vgl. dazu UNIT_<Typ>.
setDocType(doppelseitig, ArtErsteSeite)
Bestimmt den Dokumenttyp: Um ein doppelseitiges Layout zu erhalten, muss der erste Parameter auf FACINGPAGES
gesetzt werden, für ein einseitges Layout auf NOFACINGPAGES
. Der zweite Parameter bestimmt, ob die erste Seite eine linke oder rechte Seite sein soll: FIRSTPAGELEFT
oder FIRSTPAGERIGHT
.
Ein Anwendungsbeispiel (Layout wird Doppelseitig und die erste Seite ist eine rechte Seite):
# -*- coding: utf-8 -*- import scribus # Wichtig: ein Dokument wurde bereits erstellt und geladen... scribus.setDocType(scribus.FACINGPAGES, scribus.FIRSTPAGERIGHT)
ToDo: Beispiel funktioniert nicht?!? — Julius Cordes 2016/02/20 01:58
setUnit(Einheit)
Ändert die im Dokument verwendete Maßeinheit, für mögliche Werte für Einheit siehe die Konstanten im Abschnitt UNIT_<Typ>. Wirft ValueError
, wenn eine nicht erlaubte Maßeinheit angegeben wurde.