diff --git a/pypdf/generic/_data_structures.py b/pypdf/generic/_data_structures.py index 2f04d1a742..3fc913c23e 100644 --- a/pypdf/generic/_data_structures.py +++ b/pypdf/generic/_data_structures.py @@ -1363,6 +1363,8 @@ def __init__( # from table 8.2 of the PDF 1.7 reference. if typ == "/XYZ": + if len(args) < 3: # zoom is missing + args.append(NumberObject(0.0)) ( self[NameObject(TA.LEFT)], self[NameObject(TA.TOP)], diff --git a/tests/test_generic.py b/tests/test_generic.py index 80ee76b66c..5e464460d8 100644 --- a/tests/test_generic.py +++ b/tests/test_generic.py @@ -1156,3 +1156,15 @@ def test_iss1615_1673(): reader = PdfReader(BytesIO(get_pdf_from_url(url, name=name))) writer = PdfWriter() writer.clone_document_from_reader(reader) + + +@pytest.mark.enable_socket() +def test_destination_withoutzoom(): + """Cf issue #1832""" + url = ( + "https://raw.githubusercontent.com/xrkk/tmpppppp/main/" + "2021%20----%20book%20-%20Security%20of%20biquitous%20Computing%20Systems.pdf" + ) + name = "2021_book_security.pdf" + reader = PdfReader(BytesIO(get_pdf_from_url(url, name=name))) + reader.outline