Перенос rich text в XFA

Конвейер отрисовки rich text раскладывает текст XHTML-абзацев в последовательные строки, используя ширину рисования, действующие поля абзаца и textIndent первой строки

Слова переносятся целиком, когда их оформленные фрагменты помещаются в полную строку, включая слова через соседние элементы span без разделяющего пробела; слова шире строки режутся на измеренные префиксы, а суррогатные пары UTF-16 остаются целыми

Обычные пробелы XHTML, табуляции и переводы строк в исходнике схлопываются в один пробел между словами, а пробелы в начале или конце строки опускаются; элемент br принудительно разрывает строку, и идущие подряд разрывы сохраняют пустые промежуточные строки

Каждая строка вычисляет собственное выравнивание по центру или правому краю и общую базовую линию; строки с выравниванием по ширине распределяют свободную ширину между реальными межсловными пробелами после мягкого переноса, а последняя строка и строки, закрытые элементом br, сохраняют естественные интервалы

Действующий нативный para.lineHeight применяется к каждой строке и не может опустить шаг строки ниже высоты текста; интервал между соседними абзацами добавляется один раз вокруг целого абзаца

Переопределения шрифта и цвета в inline-стилях переживают разбиение на строки, а вложенные стили внутри гиперссылки остаются действующими; каждый позиционированный фрагмент гиперссылки сохраняет свою цель и создаёт собственный нативный прямоугольник PDF-ссылки

HPDFXFAFlatten использует предоставленный TXFAMeasureTextFunc для подгонки, с ограниченными пробами префиксов для слишком широких слов; если измеритель не передан, резервный путь берёт advance в пол-эма на каждый скаляр Unicode

THotPDF.ApplyXFAAsAcroForm использует нативный измеритель шрифта и сохраняет правки runtime при сохранении и перезагрузке XDP, включая независимые переопределения текста, цвета и абзаца на повторных экземплярах

Текущий разрыватель строк опирается на границы слов по пробельным символам и аварийное безопасное для скаляров разрезание; полные правила разрывов строк Unicode и кластеров графем, дополнительные режимы CSS white-space, полноценное rich-text-редактирование виджетов и оставшаяся геометрия оформления остаются отдельными целями

Геометрия абзацев, Переопределения свойств rich text и ApplyXFAAsAcroForm