#!/usr/bin/env Python # -*- coding: utf-8 -*- import scribus, re slafile = scribus.fileDialog("Bitte eine Scribus 1.5.x Datei auswählen.", "Scribus-Dateien (*.sla)") filecontent = open(slafile, "r").read() filecontent = filecontent.replace('', '') filecontent = filecontent.replace('', '') filecontent = filecontent.replace('', '') filecontent = filecontent.replace('', ' ') filecontent = filecontent.replace('', '') filecontent = filecontent.replace('PTYPE="12"', 'PTYPE="7"') filecontent = filecontent.replace('PTYPE="16"', 'PTYPE="4"') # quick and dirty workaround for setting PRINTABLE attribute to 1 if not already set: filecontent = filecontent.replace('CLIPEDIT="1" PWIDTH=', 'CLIPEDIT="1" PRINTABLE="1" PWIDTH=') filecontent = filecontent.replace('CLIPEDIT="0" PWIDTH=', 'CLIPEDIT="0" PRINTABLE="1" PWIDTH=') filecontent = re.sub(r"(].*?>)", "", filecontent) filecontent = re.sub(r"(].*?>)", "", filecontent) filecontent = re.sub(r"(].*?>)", "", filecontent) newfile = slafile.replace(".sla", "_1-4.sla") if os.path.isfile(newfile): scribus.messageBox("Fehler: Datei bereits vorhanden", "Die Datei „"+newfile+"“ ist bereits vorhanden.\nDas Script wurde abgebrochen; Geben sie einen anderes Suffix an oder verschieben sie die Datei.") else: ofile = open(newfile, "w").write(filecontent) scribus.openDoc(newfile) anzahl = scribus.pageCount() for seite in range(1,anzahl+1): scribus.gotoPage(seite) objects = scribus.getAllObjects() for x in objects: width,height = scribus.getSize(x) scribus.sizeObject(100,100,x) scribus.sizeObject(width,height,x) scribus.setLineShade(100, x)