HPDFXFABuildButtonAppearance
Unidad: HPDFXFAHeadless
function HPDFXFABuildButtonAppearance(const Text, Style: AnsiString;
Width, Height: Double; const TrueTypeFont: SysUtils.TBytes;
FirstObjectNumber: Integer; const Options: TXFAHeadlessPDFOptions;
const ResolvedCaptionRuns: THPDFHeadlessRichTextRuns = nil): THPDFXFAButtonAppearance;
Prepara una appearance real de pushbutton usando los mismos consumidores de caption, estado, fuente y layout que la creación automática de XFA headless; Text es UTF-8, Style son los metadatos emitidos por el callback de layout XFA, y Width/Height son puntos PDF físicos
TrueTypeFont suministra el programa predeterminado real; Options.CaptionFontFamilies suministra programas reales adicionales regular, bold, italic y bold-italic, con sus etiquetas declaradas
FirstObjectNumber debe ser positivo y dejar espacio para todos los números de objeto consecutivos generados; el bundle devuelto es propietario de los objetos nativos alcanzables y de las raíces separadas de propiedades de widget y fuente predeterminada
La fábrica nunca cambia un documento del llamador ni escribe en un stream del llamador; las comprobaciones de fuente, glyph, entrada, objeto, bytes de serialización y cancelación se aplican durante la preparación
Con ResolvedCaptionRuns nil, se preserva la ruta existente de familias configuradas; la anulación opcional admite un catálogo de fuentes instaladas resuelto por separado sin reemplazar el texto ni el formato del autor
Una anulación no vacía exige el payload actual de caption enriquecido y coincidencia exacta de número de runs, texto, estilo, tamaño, color, subrayado, tachado, frontera de párrafo, alineación y FontFamilyCandidates ordenadas; solo FontFamily puede cambiar a una etiqueta configurada
El fallback de fuente compartido elige entonces una familia real que cubra el grafema completo a través de todos los estilos participantes; los programas bold o italic ausentes nunca se sintetizan
Los metadatos de caption normal/down/rollover, los captions vacíos explícitos, los captions ocultos y el comportamiento normal de reserva cero siguen las semánticas de caption de pushbutton