Seite 1 von 1

Automatische Textrahmen nachträglich einschalten

Verfasst: Fr 11. Mai 2018, 18:07
von Julius
Dieser Beitrag war ursprünglich in diesem Thread: https://www.scribus-user.de/forum/viewt ... f=5&p=4806
Hallo zusammen,

man kann das auch von einem Script erledigen lassen.

Ich habe mal eines erstellt (zum Herunterladen auch als Anhang). Einfach das Script abspeichern, Dokument in Scribus öffnen, dort Seiten anlegen, auf der ersten neu angelegten Seite einen Textrahmen mit den gewünschten Abmessungen erstellen, diesen Textrahmen auswählen und das Script über das „Script“-Menü ausführen. Anschließend fragt das Script dann ab, bis zu welcher Seite Textrahmen erstellt und ob diese verlinkt werden sollen.

Code: Alles auswählen

# -*- coding: utf-8 -*-
from scribus import *

def createTextFrames(start, end, linkFrames=True):
  width,height = getSize()
  pos_x, pos_y = getPosition()
  name_prev = getSelectedObject()
  for page in xrange(start, end):
    gotoPage(page+1)
    name_next = createText(pos_x, pos_y, width, height)
    if linkFrames:
      linkTextFrames(name_prev, name_next)
      name_prev=name_next

if haveDoc() == False:
  messageBox("Kein Dokument geöffnet", "Um dieses Script auszuführen zu können, muss ein Dokument geöffnet sein.", icon=ICON_WARNING)
elif selectionCount()==1:
  end=int(valueDialog("Seitenzahl eingeben", "Bis zu welcher Seite sollen Textrahmen erzeugt werden?"))
  start = currentPage()
  if start > end:
    messageBox("Seitenzahl ist kleiner als aktuelle Seite", "Die gewählte Seitenzahl ist kleiner als die der aktuellen Seite, sie muss aber größer sein, weil von der aktuellen Seite aus beginnend Textrahmen angelegt werden.", icon=ICON_WARNING)
  else:
    link=messageBox("Textrahmen verketten?", "Sollen Textrahmen verlinkt werden?", button1=BUTTON_YES, button2=BUTTON_NO)
    if link==BUTTON_YES:
      link=True
    else:
      link=False
    createTextFrames(start, end, link)
    docChanged(True)
else:
  messageBox("Element auswählen", "Es muss ein Element ausgewählt sein, es sind aber "+str(selectionCount())+" ausgewählt.", icon=ICON_WARNING)
Nachtrag: Verbesserte Version hochgeladen.
Nachtrag 2: Jetzt auch im Wiki: https://wiki.scribus-user.de/ressourcen ... s_anwenden

Gruß
Julius