iText7 - PdfFormField.setValue () не работает, если / DA использует десятичный размер шрифта

iText 7.0.0

у меня есть PDF-файл, созданный Adobe LiveCycle ES 10, который создает TextField с

/DA /Arial-BoldMT 9.00 Tf 0.000 0.000 1.000 rg

это вызывает сбой в PdfFormField.regenerateField (), который ожидает, что размер шрифта текста будет целым числом (я не вижу какого-либо конкретного упоминания в спецификации PDF, что это было бы правдой)

приемлемый обходной путь для моего конкретного случая, кажется, просто установка / V в словаре, но любопытно, почему setValue () так усердно работает?


person jamey graham    schedule 28.07.2016    source источник
comment
но любопытно, почему setValue () так усердно работает ‹- теперь я вижу ... потоки внешнего вида   -  person jamey graham    schedule 28.07.2016
comment
Я создал билет в нашей закрытой билетной системе. Размер шрифта - номер типа PDF. Номер PDF может быть целым или действительным. Это означает, что размер шрифта может быть десятичным числом. Если iText 7 не принимает это, мы должны это исправить.   -  person Bruno Lowagie    schedule 29.07.2016
comment
спасибо, Бруно .. я как раз собирался открыть тикет поддержки в Jira и по этому поводу. В нашем конкретном случае нам, вероятно, не нужно, чтобы размеры шрифта универсально считались десятичными (допустимо использование полов до int ... тем более, что почти каждый случай, с которым я сталкивался, - это # ​​.00)   -  person jamey graham    schedule 29.07.2016
comment
Но когда мы исправим проблему, мы должны исправить ее для всех десятичных чисел. То же усилие.   -  person Bruno Lowagie    schedule 29.07.2016
comment
Это действительно была ошибка iText, которая сейчас исправлена, и исправление будет доступно с версии 7.0.1.   -  person Alexey Subach    schedule 10.08.2016


Ответы (1)


Это исправлено в iText 7.0.1. Размеры шрифтов теперь обрабатываются как десятичные значения и отображаются во всем API как числа с плавающей запятой.

person jamey graham    schedule 22.08.2016