THPDFHeadlessRichTextDecodeOptions

THPDFHeadlessRichTextDecodeOptions = record
  MaxCodeUnits, MaxTotalCodeUnits, MaxNodes, MaxDepth, MaxRuns: Integer;
  CancellationToken: THPDFCancellationToken;
  DefaultStyle: THPDFHeadlessRichTextRun;
  FontFamilyNames: THPDFHeadlessRichTextFontFamilyNames;
  PreserveFontFamilyLists: Boolean;
  class function Default: THPDFHeadlessRichTextDecodeOptions; static;
end;

MaxCodeUnits begrenzt das Eingabe-XHTML und jeden dekodierten Text oder Attributwert; MaxTotalCodeUnits begrenzt den gesamten dekodierten Text und Attributspeicher zusammen

MaxNodes begrenzt Elemente, Attribute und geordnete Textteile; MaxDepth begrenzt die XML-Verschachtelung und darf 64 nicht überschreiten; MaxRuns begrenzt die zurückgegebenen Runs und darf 4096 nicht überschreiten

Alle Limits müssen positiv sein; das optionale Token des Aufrufers wird vor dem Parsen, während der Textscans, bei der kompletten XML- und Run-Traversierung sowie wiederholt beim Scannen von Inline-CSS-Kommentaren und Deklarationsgrenzen geprüft

DefaultStyle liefert die vererbte Schriftgröße, Farbe, den Font-Stil, Dekoration und Ausrichtung für den Body; seine Werte Text und ParagraphBreakBefore fügen keinen Inhalt hinzu

FontFamilyNames schaltet optional die begrenzte Auswahl benannter Familien frei; konfiguriere ein bis sechzehn unterschiedliche, nichtleere Labels passend zu den mitgelieferten Familien und setze DefaultStyle.FontFamily auf das gewählte Standard-Label

PreserveFontFamilyLists steht standardmäßig auf False; bei True mit konfigurierten FontFamilyNames behalten gültige font-family-Deklarationen ihre geordneten Labels in den FontFamilyCandidates jedes Runs, auch unbekannte Labels, während FontFamily weiterhin den ersten konfigurierten Treffer oder das konfigurierte Standardlabel wählt

Vererbte und important-Deklarationen übernehmen dieselbe geordnete Liste; Listen umfassen höchstens sechzehn gültige Labels, und ein nichtleeres DefaultStyle.FontFamilyCandidates setzt diese Option voraus

Font-Shorthand nutzt dieselben Namen und Candidate-Listen-Optionen; seine Größen- und Stilkomponenten bleiben auch ohne Konfiguration benannter Familien verfügbar

Das voreingestellte leere Namen-Array behält das bisherige Ein-Familien-Dekoder-Profil bei und ignoriert font-family-Deklarationen

MediaType, MediaFeatures und MediaInitialFontSize wählen das explizite Print/Screen-Profil und die initiale Schrift für interne Style-Media-Attribute und verschachtelte @media-Bedingungen

DocumentURI, StyleSheetTitle und StyleSheets konfigurieren aufruferseitige externe Style-Sheets; ihre Defaults sind leer und rufen keine Ressourcen ab

Standardwerte · Dekodierung

Zahlenmathematik nutzt DefaultStyle.FontSize für die anfängliche Root-Größenbestimmung, die berechnete Root-Schrift für rem-Längen und explizite MediaFeatures width und height für Viewport-Einheiten; Math-Scanning und Rekursion behalten die Knoten-, Tiefen- und Abbruchgrenzen

Native Support-Queries lassen @supports-Gruppen und supports()-Importe zu, mit dem unterstützten Deklarations- und Selektorprofil, gemeinsamen Grenzen und Abbruch-Recovery