Ваш объект 8
8 0 obj
<</F 132/Type/Annot/Subtype/Widget/Rect[0 0 0 0]/FT/Sig/DR<<>>/T(Signature1)/V 6 0 R/P 3 0 R/AP<</N 7 0 R>>>>
endobj
- это поле формы AcroForm для подписей (как говорит нам запись FT со значением Sig ). В то же время, однако, этот объект также является аннотацией виджета поля формы (как можно видеть в записях Type и Subtype ). Аннотации виджета поля формы являются визуальными представлениями полей формы, и если поле формы имеет только одно представление, виджет можно объединить с полем формы, как в вашем объекте.
В вашем случае аннотация имеет размер 0x0 (/Rect[0 0 0 0]
), т.е. невидимый. Чтобы иметь видимое представление, вам нужен прямоугольник аннотации, который не исчезает.
Отображаемый контент определяется в обычном виде /AP<</N 7 0 R>>
, который указывает на объект 7.
7 0 obj
<</Type/XObject/Resources<</ProcSet [/PDF /Text /ImageB /ImageC /ImageI]>>/Subtype/Form/BBox[0 0 0 0]/Matrix [1 0 0 1 0 0]/Length 8/FormType 1/Filter/FlateDecode>>stream
xœ
endstream
endobj
На первый взгляд это выглядит довольно пусто, даже после распаковки.
Итак, что вам нужно сделать, это
- выберите неисчезающий прямоугольник для аннотации поля формы подписи,
- адаптирует BBox потока нормального внешнего вида к этому прямоугольнику аннотации и
- создайте непустое содержимое в обычном потоке появления этой аннотации вместо добавления содержимого страницы.
Кроме того, вы должны исправить очевидные ошибки в вашем PDF, например,
- объект 7, обычный вид вашего поля подписи, помечен как свободный в ваших перекрестных ссылках
- ваш трейлер претендует на размер 17
Для получения более подробной информации изучите спецификацию PDF ISO 32000. Часть 1 опубликована для загрузки Adobe на https://www.adobe.com/content/dam/acom/en/devnet/pdf/pdfs/PDF32000_2008.pdf
В отдельных разделах
- 12,5 "Аннотации"
- 12,7 "Интерактивные формы"
- 12,8 "Цифровые подписи"