HPDFPrepareHeadlessRichTextLineBoxes

function HPDFPrepareHeadlessRichTextLineBoxes(
  const Runs: THPDFHeadlessRichTextRuns; MaximumRuns: Integer;
  CancellationToken: THPDFCancellationToken = nil): THPDFHeadlessRichTextRuns;

Zwraca odrębną sekwencję runów z metrycznymi podporami akapitu potrzebnymi jawnym wysokościom linii rich; nie modyfikuje autorskich rekordów runów wywołującego

MaximumRuns musi być od 1 do 4096 i zawiera wstawione podpory; przekroczenie tej pojemności podnosi EHPDFHeadlessAppearanceError z haLimitExceeded

Akapit z jawną wysokością dostaje podporę skopiowaną ze swojego pierwszego autorskiego runa, gdy brak jawnie istniejącej podpory; legacy pierwsza wysokość staje się normalna, a inne legacy wysokości potomków pozostają normalne zamiast dziedziczyć czynnik rodzeństwa

Istniejący run IsParagraphStrut musi być pierwszym pustym runem swojego akapitu i musi nieść nie-legacy wysokość; wadliwe umieszczenie runu metrycznego podnosi haInvalidOptions

ParagraphBreakBefore przenosi się do wstawionej podpory, więc zwykły tekst zachowuje dokładnie oryginalne granice akapitów; akapity w pełni legacy zachowują istniejącą sekwencję runów i wartości

Planiści fontów powinni uwzględnić każdy niepusty run i każdy run IsParagraphStrut z przygotowanej sekwencji, bo puste podpory wymagają rzeczywistych metryk swojego krój i stylu

Opcjonalny token anulowania jest odpytywany podczas przygotowania i propaguje EHPDFOperationCancelled; funkcja nie wykonuje dostępu do plików, ładowania fontów, publikacji PDF ani commitów callbacków

Przygotowanie waliduje ograniczoną strukturę akapitu; zwykła walidacja Unicode, koloru, rozmiaru, programów fontów i limitów obiektów pozostaje po stronie serializera rich i buildera wyglądów

Zachowanie line-height · Rekord runa