Функция HPDFComputeLineBreaks

function HPDFComputeLineBreaks(const Text: WideString; Sender: TObject;
  Tailor: THPDFLineBreakTailoringEvent): THPDFLineBreakOpportunities;

Вычисляет позиции разрывов строк по умолчанию для композиции абзацев документа и применяет необязательный колбэк тонкой настройки вызывающего

В Delphi 2009 и новее и на поддерживаемых FPC-таргетах прежний интерфейс документа использует полный переносимый движок границ Unicode 17 и возвращает UTF-16 смещения с нуля без позиций внутри суррогатных пар

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

Для каждой внутренней границы скаляра Tailor вызывается один раз с исходным Sender, исходным Text, смещением и соседними классами с разрешением по умолчанию, включая наследование базы комбинирования и обработку знаков SA

Колбэк может менять вычисленный вид; при применении типографики приложения сохраняйте обязательные концы строк

Разрешённая позиция мягкого переноса просит вставку дефиса со штрафом 50; запрещённая позиция, включая запрет от колбэка или следующий word joiner, вставку дефиса форсировать не может

Битый UTF-16 или более 1048576 code units вызывают EArgumentException на таргетах Unicode 17; более ранние Delphi-таргеты сохраняют прежнюю совместимую реализацию

Свойство тонкой настройки документа · Композиция абзацев · Переносимый API границ