THPDFHeadlessRichTextRun
THPDFHeadlessRichTextRun = record
Text: UnicodeString;
FontFamily: UnicodeString;
FontFamilyCandidates: THPDFHeadlessRichTextFontFamilyCandidates;
FontStyle: THPDFHeadlessRichTextFontStyle;
FontSize: Double;
LineHeightKind: THPDFHeadlessRichTextLineHeightKind;
LineHeight: Double;
LetterSpacingKind, WordSpacingKind: THPDFHeadlessRichTextSpacingKind;
LetterSpacing, WordSpacing: Double;
IsParagraphStrut: Boolean;
TextColor: array[0..2] of Double;
Underline, StrikeOut, ParagraphBreakBefore: Boolean;
Alignment: THPDFHeadlessTextAlignment;
class function Default: THPDFHeadlessRichTextRun; static;
end;
LineHeightKind tem default hrlhLegacy; LineHeight tem default zero, e IsParagraphStrut tem default false
Um strut tem Text vazio, uma altura explícita e a face, o estilo e o tamanho reais do pai; ele precisa iniciar seu parágrafo e contribui com métricas reais sem adicionar texto ao V
O comportamento de line-height explícito usa preparação compartilhada para APs tipados nativos e serialização RV
LetterSpacingKind e WordSpacingKind têm default hrspLegacy com valores autorados zero; points e em explícitos retêm a precisão Double com sinal e usam o layout de spacing CSS delimitado
Um run de texto estilizado explícito; tamanhos de fonte precisam ser positivos e as cores precisam conter três componentes finitos de zero a um
FontFamily seleciona um rótulo configurado ao usar as APIs de famílias nomeadas; um rótulo vazio seleciona a família default delas, e o builder existente de família única exige um rótulo vazio
FontFamilyCandidates opcionalmente retém uma lista ordered de um a dezesseis rótulos de famílias fornecidas para o fallback de graphemes completos; Default retorna uma lista vazia, e uma lista não vazia exige FallbackFontFamilies habilitado
ParagraphBreakBefore insere uma fronteira de parágrafo antes de um run posterior ao primeiro; o V simples contém um carriage return nessa fronteira
Alignment seleciona o alinhamento do parágrafo no seu primeiro run, incluindo um primeiro run vazio, e nos runs com ParagraphBreakBefore; os demais runs inline e quebras de linha explícitas retêm esse alinhamento