Поэтому я пытаюсь пометить флажки в файле PDF с помощью pdfrw.Это означает изменение значения флажка "AS" со значения по умолчанию "/ Off" на "/ Yes".pdfrw в настоящее время ставит скобки вокруг моего "/ Да" при записи в файл, поэтому он не работает.Как мне не допустить добавления этих скобок?
Мой код:
template_pdf = pdfrw.PdfReader(input_pdf_path)
annotations = template_pdf.pages[0][/Annots]
for annotation in annotations:
annotation.update(pdfrw.PdfDict(AS="/Yes"))
pdfrw.PdfWriter().write(output_pdf_path, template_pdf)
Мои флажки в PDF-файле заканчиваются так: первое слово в третьей строке является важным:
1661 0 obj
<</AP <</D <</Off 1845 0 R /Yes 1846 0 R>> /N <</Yes 1847 0 R>>>> /AS
(/Yes) /F 4 /FT /Btn /MK <</CA (l)>> /P 1608 0 R /Rect
[101.275 576.22 107.395 584.91] /Subtype /Widget /T (box1) /Type
/Annot>>
endobj
Но чтобы флажок действительно отображался в большинстве программ просмотра PDF, он должен выглядеть примерно так:
1661 0 obj
<</AP <</D <</Off 1845 0 R /Yes 1846 0 R>> /N <</Yes 1847 0 R>>>> /AS
/Yes /F 4 /FT /Btn /MK <</CA (l)>> /P 1608 0 R /Rect
[101.275 576.22 107.395 584.91] /Subtype /Widget /T (box1) /Type
/Annot>>
endobj
Я всегда могу просто открыть файл в Python и простозамените все экземпляры "(/ Yes)" на "/ Yes", но должен быть какой-то способ получить правильные значения с pdfrw.