File tree Expand file tree Collapse file tree 2 files changed +18
-0
lines changed Expand file tree Collapse file tree 2 files changed +18
-0
lines changed Original file line number Diff line number Diff line change @@ -987,6 +987,11 @@ def update_page_form_field_values(
987987 or writer_parent_annot .get ("/T" , None ) == field
988988 ):
989989 continue
990+ if (
991+ writer_parent_annot .get ("/FT" , None ) == "/Ch"
992+ and "/I" in writer_parent_annot
993+ ):
994+ del writer_parent_annot ["/I" ]
990995 if flags :
991996 writer_annot [NameObject (FA .Ff )] = NumberObject (flags )
992997 if isinstance (value , list ):
Original file line number Diff line number Diff line change @@ -2217,3 +2217,16 @@ def test_init_without_named_arg():
22172217 assert len (writer ._objects ) == nb
22182218 writer = PdfWriter (by )
22192219 assert len (writer ._objects ) == nb
2220+
2221+
2222+ @pytest .mark .enable_socket ()
2223+ def test_i_in_choice_fields ():
2224+ """Cf #2611"""
2225+ url = "https://github.com/py-pdf/pypdf/files/15176321/FRA.F.6180.150.pdf"
2226+ name = "iss2611.pdf"
2227+ writer = PdfWriter (BytesIO (get_data_from_url (url , name = name )))
2228+ assert "/I" in writer .get_fields ()["State" ].indirect_reference .get_object ()
2229+ writer .update_page_form_field_values (
2230+ writer .pages [0 ], {"State" : "NY" }, auto_regenerate = False
2231+ )
2232+ assert "/I" not in writer .get_fields ()["State" ].indirect_reference .get_object ()
You can’t perform that action at this time.
0 commit comments