Benutzer-Werkzeuge

Webseiten-Werkzeuge


scripter:dokument_befehle

Dokument Befehle

Diese Seite listet Befehle auf, die sich auf das Scribus-Dokument und seine Eigenschaften beziehen.

Öffnen, schließen und speichern

closeDoc(…)

closeDoc()

Schließt ohne weitere Nachfrage das aktuell geöffnete Dokument.
Gibt NoDocOpenError zurück, wenn kein Dokument geöffnet wurde.

docChanged(…)

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(…)

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:

  • Abmessungen: Ein Tupel vom Format (breite, höhe), das die Abmessungen des Dokuments beschreibt. Vordefinierte Konstanten vom Format PAPER_<Papier_Typ> sind ebenfalls nutzbar, z. B. PAPER_A4
  • Rahmen: Ein Tupel vom Format (links, rechts, oben, unten), das die Rahmen des Dokuments angibt
  • Ausrichtung: Ausrichtung der Seite, mögliche Werte sind die Konstanten:
    • PORTRAIT → Hochformat
    • LANDSCAPE → Querformat
  • ersteSeitenNummer: die Nummer der ersten Seite des Dokuments, die bei der Nummerierung der Seitenzahlen gezählt wird. Üblicherweise 1, höhere Nummern werden benötigt, wenn Sie ein Dokument in mehrere Dokumente aufteilen möchten (siehe FAQ/Problemlösungen:Weitere Maßnahmen zur Performancesteigerung).
  • Einheit: Konstante, die die Längenmaßeinheit im Dokument festlegt, z. B. UNIT_MILLIMETERS weitere Eigenschaften sind weiter oben zu finden
  • doppelseite: Mögliche Werte (Konstanten):
    • FACINGPAGES → Doppelseitig
    • NOFACINGPAGES → Einseitig
  • ArtErsteSeite: Mögliche Werte (Konstanten):
    • FIRSTPAGELEFT → Beginne mit linker Seite als erster Seite
    • FIRSTPAGERIGHT → 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:

neuesDokument.py
# -*- 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(…)

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(…)

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 DateiSpeichern.

saveDocAs(…)

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 DateiSpeichern unter….

Informationen gewinnen

getDocName()

getDocName() → String

Mithilfe von getDocName lässt sich herausfinden, wo ein Dokument gespeichert ist:

Beispielskript

Das folgende Skript gibt den Verzeichnispfad des Dokuments oder – falls keins geöffnet ist – eine Fehlermeldung aus.

getDocName.py
# -*- 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(…)

getUnit() → integer (Scribus Maßeinheiten-Konstante)

Gibt die Maßeinheit des Dokuments zurück. Der Rückgabewert ist eine der UNIT_*-Konstanten:

UNIT_*-Typen

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.

Beispielskript

Die Werte der einzelnen UNIT_*-Konstanten lassen sich mit folgendem Script anzeigen:

masseinheiten.py
# -*- 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(…)

haveDoc() → bool

Gibt true zurück, wenn ein Dokument geöffnet ist.

loadStylesFromFile(…)

loadStylesFromFile("dateiname")

Lädt Absatzstile aus dem Scribus-Dokument unter "dateiname" ins gerade geöffnete Dokument.

Eigenschaften festlegen

setInfo(…)

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 einrichtenDokumentinformationen bearbeitet werden.

setMargins(…)

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(…)

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):

setDocType.py
# -*- 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(…)

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.

scripter/dokument_befehle.txt · Zuletzt geändert: 2017/03/16 23:49 von julius