HPDFPrepareHeadlessRichTextLineBoxes
function HPDFPrepareHeadlessRichTextLineBoxes(
const Runs: THPDFHeadlessRichTextRuns; MaximumRuns: Integer;
CancellationToken: THPDFCancellationToken = nil): THPDFHeadlessRichTextRuns;
Returnerer en separat run-sekvens med de metrics-kun afsnitsstrutter, som eksplicitte rich linjehøjder kræver; den ændrer ikke kalderens authored run-records
MaximumRuns skal være fra én til 4096 og inkluderer indsatte strutter; overskrides kapaciteten, udløses EHPDFHeadlessAppearanceError med haLimitExceeded
Et afsnit med en eksplicit højde får en strut kopieret fra sit første authored run, når der ikke findes en eksplicit strut; en legacy første højde bliver normal, og andre legacy child-højder forbliver normale i stedet for at nedarve en sibling-faktor
Et eksisterende IsParagraphStrut-run skal være sit afsnits første tomme run og skal bære en ikke-legacy højde; misdannet metric-run-placering udløser haInvalidOptions
ParagraphBreakBefore flyttes til den indsatte strut, så plain tekst bevarer præcis sine originale afsnitsgrænser; alle-legacy-afsnit bevarer deres eksisterende run-sekvens og værdier
Font-planlæggere bør inkludere hvert ikke-tomt run og hvert IsParagraphStrut-run fra den forberedte sekvens, fordi tomme strutter kræver deres faktiske leverede face- og style-metrics
Den valgfrie cancellation-token polles under forberedelsen og propagerer EHPDFOperationCancelled; funktionen udfører ingen filadgang, font-indlæsning, PDF-publicering eller callback-commit
Forberedelsen validerer sin afgrænsede afsnitsstruktur; almindelig Unicode-, farve-, størrelses-, fontprogram- og objektbudget-validering forbliver hos rich-serialisatoren og appearance-builderen