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