HPDFXFABuildChoiceFieldAppearance
Unit: HPDFXFAHeadless
function HPDFXFABuildChoiceFieldAppearance(const Kind, Value, Style: AnsiString;
const Items: TXFAFieldOptions; Width, Height: Double;
const TrueTypeFont: SysUtils.TBytes; FirstObjectNumber: Integer;
const Options: TXFAHeadlessPDFOptions;
GenerateAppearance: Boolean = True): THPDFXFAChoiceAppearance;
Prepara um campo choice nativo de combo ou list sem alterar documento nem stream de saída do chamador, usando o mesmo consumer de opções, seleção, scrolling e aparência da criação automática de XFA headless
Kind é combo ou list; Value e Items contêm texto UTF-8, Width e Height são pontos físicos do PDF, e Style contém os metadados emitidos pelo callback de layout do XFA
Os arrays exatos de export e display e a seleção raw em Style têm precedência sobre os arguments de compatibilidade Items e Value, preservando o whitespace autorado e rótulos de display separados
O bundle retornado contém V, Opt, I quando há seleção, TI para lists, Ff e Q, mais AP e DA quando solicitados; ele exclui identidade do campo, identidade da página, parent e retângulo
Listas multi-select armazenam um array real de valores PDF e índices selecionados na ordem das opções; combos editáveis retêm texto livre sem inventar um índice de opção
TrueTypeFont fornece o programa real de fonte para as aparências geradas; uma list rola para mostrar as opções selecionadas usando métricas reais da fonte e pinta as linhas selecionadas com seus rótulos de display
GenerateAppearance tem default True; False prepara apenas metadados, não exige programa de fonte, não cria AP nem DA e não executa trabalho de glyphs; uma list somente de metadados começa no seu primeiro índice selecionado porque as métricas do viewer determinam seu viewport eventual
FirstObjectNumber precisa ser positivo e deixar espaço para todos os números de objetos gerados consecutivos; o chamador reserva essa faixa, adota os objetos e registra Fonts no seu AcroForm DR antes de anexar Properties a um widget real
O bundle é dono de todos os objetos até serem desanexados, e os limites de entrada, objetos, fontes, glyphs, bytes serializados e cancelamento em Options se aplicam durante toda a preparação
Para o consumer Windows do THotPDF, veja campos choice legados do XFA