2016-11-08 2 views
0

Как я могу получить, с какой страницы это поле?Как я могу получить номер страницы для определенного поля в iText?

PdfReader reader = new PdfReader(path); 
AcroFields fields = reader.getAcroFields(); 
Set<String> fieldNames = fields.getFields.keySet(); 
for(String fieldName : fieldNames) 
{ 
    String fieldValue = fields.getField(fieldName); 
    //get page number for this field 
} 

ответ

0

Вам нужен метод getFieldPositions(). Одно поле может соответствовать нескольким аннотациям виджета. Например, поле с именем fieldName можно визуализировать на разных страницах, поэтому метод возвращает List.

Так что, если вы хотите, чтобы получить страницу первого (или единственного) элемента, вам необходимо:

int page = form.getFieldPositions(name).get(0).page; 

Кстати: координаты можно найти, как это:

Rectangle rectangle = form.getFieldPositions(name).get(0).position; 
+0

Спасибо вы! Это помогло мне :). –

Смежные вопросы