Script für PDF-Batch-Export

Antworten
Benutzeravatar
Julius
Beiträge: 351
Registriert: Di 10. Feb 2015, 23:54
Wohnort: Emsland

Script für PDF-Batch-Export

Beitrag von Julius »

Dieses Plugin öffnet und exportiert eine Auswahl von Scribus-Dateien als PDFs.

Wird die entpackte Datei pdf-export.py über das Script-Menü ausgeführt, erscheint ein Datei-Auswahl-Dialog, in dem per gedrückter Strg / Ctrl-Taste mehrere Dateien ausgewählt werden können. Anschließend werden die Dateien mit einem angehängten Suffix dateiname.sla.pdf im gleichen Ordner wie die Ausgangsdateien abgelegt.

In der Datei selbst sind noch zwei Änderungen vorgesehen:
  1. Wird die Zeile dateien = QtGui.QFileDialog.getOpenFileNames(None, 'Scribus Dateien ausw'+u"\u00E4"+'hlen',"", "Scribus-Dateien (*.sla *.sla.gz);;Alle Dateien (*)") per vorangestelltem # auskommentiert und das Kommentarzeichen vor der nächsten Zeile entfernt, erscheint keine Dateiabfrage mehr, sondern die zu exportierenden Dateien werden als Liste in der Zeile darunter festgelegt (siehe Beispiele; absolute Pfade verwenden!)
  2. Wird die Zeile pdf.file = str(datei)+'.pdf' auskommentiert und das Kommentarzeichen vor der nächsten Zeile entfernt, werden die PDFs statt dateiname.sla.pdf unter dateiname.pdf abgespeichert.

Wichtig: Bereits existierende PDF-Dateien mit dem gleichen Namen werden ohne vorherige Abfrage durch eine neue Version ersetzt!

Das Skript (das Gleiche befindet sich im Anhang):

Code: Alles auswählen

#!/usr/bin/env Python
# -*- coding: utf-8 -*-
import scribus
import re
from PyQt4 import QtGui

dateien = QtGui.QFileDialog.getOpenFileNames(None, 'Scribus Dateien ausw'+u"\u00E4"+'hlen',"", "Scribus-Dateien (*.sla *.sla.gz);;Alle Dateien (*)")
#dateien = ['/home/julius/Schreibtisch/Scribus-Experimente/testdokument1.sla', '/home/julius/Schreibtisch/Scribus-Experimente/testdatei.sla', '/home/julius/Schreibtisch/Scribus-Experimente/test.sla']

counter = 0

for datei in dateien:
    scribus.messagebarText("Bearbeite Datei „"+datei+"“")
    scribus.openDoc(datei)
    pdf = scribus.PDFfile()
    pdf.file = str(datei)+'.pdf'
    #pdf.file = re.sub(r"(.sla)?(.sla)$", ".pdf", str(datei))
    pdf.save()
    scribus.closeDoc()
    counter = counter + 1

if counter > 0:
  scribus.messageBox('Export beendet', 'PDF-Export erfolgreich beendet!')
else:
  scribus.messageBox('PDF-Export', 'Keine Dateien ausgewählt!')
Viel Spaß damit.
Julius
Dateianhänge
pdf-export.py.zip
(584 Bytes) 721-mal heruntergeladen
Scribus 1.4.7 und 1.5.4 (Entwicklungszweig) unter Ubuntu 18.04
Um Mithilfe beim Deutsch-sprachigen Scribus-Wiki wird gebeten!

Die aktuellen Versionen von Scribus:
Bild
Antworten