Skip to content

Stream has ended unexpectedly #454

Description

@simonsteiner1984

out.pdf

"PyPDF2/generic.py", line 334, in readStringFromStream
    raise PdfStreamError("Stream has ended unexpectedly")
PyPDF2.utils.PdfStreamError: Stream has ended unexpectedly

with this code:

import StringIO
from PyPDF2 import PdfFileWriter, PdfFileReader
from reportlab.pdfgen import canvas
from reportlab.lib.pagesizes import A4

input_pdf = '../out.pdf'

ifh = file(input_pdf, 'rb')
inv_input = PdfFileReader(ifh, strict=False)

packet = StringIO.StringIO()

can = canvas.Canvas(packet, pagesize=A4)
can.drawString(10, 10, 'ADDED INFO')
can.save()

packet.seek(0)
added_info = PdfFileReader(packet)

output = PdfFileWriter()

page_count = 1
for x in range(page_count):
    page = inv_input.getPage(x)
    page.mergePage(added_info.getPage(0))
    output.addPage(page)

file_stream = file('../pypdf.pdf', 'wb')
output.write(file_stream)
file_stream.close()

Metadata

Metadata

Assignees

No one assigned

    Labels

    Has MCVEA minimal, complete and verifiable example helps a lot to debug / understand feature requestsis-bugFrom a users perspective, this is a bug - a violation of the expected behavior with a compliant PDF

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions