Ich versuche, ein Programm in Python zu machen, um meine PDF-Beamer-Präsentationen zu manipulieren. Professor verwenden auf Klick dynamischen Übergang, so dass eine Seite mehrere Klickübergänge hat. Ich möchte diese Präsentationen drucken, aber ich habe rund 5000 Seiten. Daher möchte ich nur die letzte Klick-Übergangsseite verwenden, so dass ich die Anzahl der Seiten auf ungefähr 500 reduzieren werde. Ich benutze das PyPDF2-Modul, aber es macht keine gültige PDF-Datei. Hier ist der Code:PyPDF-Modul erstellt keine gültige PDF-Datei
from pyPdf import PdfFileWriter, PdfFileReader
import os,sys
pdful = raw_input("Uneti ime fajla:")
output = PdfFileWriter()
input1 = PdfFileReader(open(pdful, "rb"))
m = []
f = True
print ("Uneti strane koje zelite da zadrzite.String 0 kraj unosa:\n")
while f:
l = int(raw_input("Uneti broj stranice:"))
if l == 0:
f = not f
else: m.append(l-1)
for i in range(len(m)):
strana = input1.getPage(int(m[i]))
output.addPage(strana)
outputStream = file("Mat8.pdf","wb")
output.write(outputStream)
# string writings are in Serbian, but that's not so important. Program should take input from user: name of file to manipulate, and pages that should copy.
Verwenden 'file' nicht eine Datei zu öffnen, anstatt die' open'-Funktion verwenden. Wahrscheinlich möchten Sie auch die Ausgabedatei schließen, um sicherzustellen, dass die Schreibvorgänge abgeschlossen wurden, indem Sie am Ende "outputStream.close()" setzen. – Bakuriu