Radio buttons legados do XFA

THotPDF.ApplyXFAAsAcroForm e FlattenLoadedXFA agrupam os membros de radio pelo repeat scope nativo de template e dataset emitido pelo layout XFA

Grupos repetidos com o mesmo nome autorado viram campos pais independentes, cada um com seus próprios Kids, V, DV e Opt; sufixos de nomes exibidos alocam nomes únicos de campos PDF depois que a identidade do escopo já foi resolvida

A contagem de campos retornada conta os callbacks de layout, incluindo cada membro de radio, em vez de contar apenas os dicionários pais

Cada membro compara seu export raw exato com o valor selecionado dos dados do grupo; whitespace nas bordas, Unicode, exports vazios e sequências literais de hash permanecem exatos

Exports vazios, Off e com prefixo XFAOn usam aliases de aparência distintos enquanto Opt retém o export literal; exports duplicados no mesmo grupo definem RadiosInUnison

As aparências nativas consomem estilos reais de shape, marca, tamanho, borda e caption do XFA, incluindo captions Unicode e rich-text por instância, programas reais instalados regular/bold/italic e candidatos ordered de famílias

Defina AutoFormAppearances := True para gerar streams AP reais e autocontidos; PDF 2.0 força essas aparências, e a geração de aparências desabilitada preserva identidades de grupos e a seleção sem embutir programas de fontes de captions

O estado read-only do grupo é armazenado no campo pai; o estado do membro, a página e as referências AP selecionadas persistem com cada widget

A preparação do grupo valida a aparência de cada membro antes de adotar o grupo, e depois usa uma transação de grafo para seu parent, filhos, objetos nativos, fontes e anotações de páginas tocadas

Uma falha de preparação ou cancelamento não deixa grupo parcial; o rollback restaura a ordem existente de campos, recursos de páginas, referências de anotações e o wiring adiado de fontes, de modo que o desenho anterior de páginas e um retry posterior permaneçam válidos

Para um retry na mesma localização do documento, restaure a página atual desejada antes de chamar ApplyXFAAsAcroForm de novo; o layout comum retoma da página atual

A transação cobre um grupo de radio completo; campos não relacionados completados anteriormente, grupos anteriores e páginas criadas pelo layout ficam fora desta transação de grupo

A coleção e a preparação de radios aplicam checagens delimitadas de entrada, campos, objetos, glyphs, fontes e bytes serializados e honram o token de cancelamento do documento; os orçamentos existentes de operações e scripts do documento permanecem inalterados

A factory portátil HPDFXFABuildRadioButtonAppearance prepara um grafo nativo de membro desanexado a partir de bytes de fontes fornecidos no Windows e no Linux; o consumer legado de fontes instaladas usa o GDI do Windows