Interchange rich de formulários na C ABI nativa do Linux
A operação forms.import existente aceita FDF RV e XFDF value-richtext pelos callbacks versionados InputIO do chamador e publica um PDF realmente atualizado através de OutputIO
A versão da ABI V1, os símbolos exportados e o layout das tabelas de callbacks permanecem inalterados; este binding mira o Linux nativo x64
{"schemaVersion":1,"type":"forms.import","format":"xfdf","fontFamily":"DejaVu Sans","fontSize":12}
O PDF de destino já precisa estar carregado; InputIO fornece os bytes reais do form data, e não outro PDF
O perfil inline-xhtml-v1 preserva a ordem mista de texto Unicode, quebras de parágrafos e linhas explícitas, tamanhos inline herdados de fontes, cores RGB, weight, itálico, underline, strikeout e alinhamento de parágrafos através do decoder nativo XHTML delimitado
Famílias de fontes rich nomeadas opcionais selecionam programas configurados com listas CSS herdados de famílias; layout CSS arbitrário, import de layers e condições supports, tabelas, imagens e alinhamento vertical permanecem capabilities separadas
fontFamily seleciona os programas reais regular, bold, italic e bold-italic do provider nativo de fontes; apenas os estilos exigidos pelos valores rich reais são carregados, junto do programa regular usado por campos escalares
A configuração Fontconfig do deployment precisa fornecer a família e as faces desejadas; o fallback normal do provider se aplica quando uma face solicitada não está disponível, e fontStyles descreve os slots de estilos carregados, em vez de certificar faces de fontes instaladas
Os programas de fontes retornam ao chamador dentro dos streams de fontes embutidas do PDF preparado e nas aparências reais; nenhum caminho de arquivo de fonte é exposto na resposta JSON
Quando fontSize é zero, XHTML sem estilo usa o default de 12 pontos do decoder; tamanhos de fonte XHTML suportados explícitos retêm seus próprios valores
| Campo de resultado | Significado |
|---|---|
updated | Contagem de campos terminais alterados, incluindo mudanças suportadas somente de estilo |
richFieldCount | Número de campos rich na entrada decodificada, incluindo valores inalterados equivalentes |
fontStyles | Slots de fontes realmente carregados, na ordem regular, bold, italic, boldItalic |
richXMLProfile | inline-xhtml-v1 ou inline-xhtml-font-families-v1 quando a entrada decodificada contém campos rich |
fontFamilies | Rótulos configurados de famílias quando o array opcional de famílias nomeadas é fornecido |
Markup rich canônica e não canônica equivalentes é idempotente quando seu texto e estilos suportados correspondem; campos read-only inalterados preservam o RV da origem, enquanto estilos suportados diferentes aplicam a proteção read-only
Um import de zero mudanças publica o snapshot exato commitado do PDF privado, incluindo revisões assinadas ou criptografadas existentes, sem acumular revisões vazias de cross-references; bytes de entrada ou arquivos de suporte do chamador alterados não substituem aquele snapshot carregado
O import preserva a segurança AES autenticada, revisões realmente assinadas, decisões DocMDP P1/P2/P3 e locks FieldMDP através da transação nativa de import rich
Os programas de fontes combinados são delimitados a um quarto de limits.memoryBytes, além do limite nativo por fonte; os limites existentes de form data, glyphs, objetos, saída e resultado permanecem ativos
Callbacks executam sincronamente na thread chamadora; callbacks parciais de entrada e saída são aceitos, e o cancelamento permanece ativo durante parsing, carregamento de fontes, preparação de aparências e publicação
O handle commita somente depois que ambos os callbacks de PDF e JSON tiverem sucesso; um erro de callback ou cancelamento preserva seu estado anterior, enquanto o chamador descarta quaisquer bytes parciais já recebidos por um sink
As capabilities anunciam formData.richXML=true, o richXMLProfile=inline-xhtml-v1 default compatível, ambos os richXMLProfiles, seleção opcional de famílias nomeadas de até dezesseis rótulos e os quatro fontStyles suportados; o interchange de anotações permanece false
Callbacks e limites de form data · C ABI nativa do Linux · Opções de confiança de assinaturas
Folhas de estilo internas aplicam selectors delimitados, importance, especificidade e ordem de origem a valores rich realmente importados e aparências salvas; imports equivalentes repetidos e publicação com falha retêm as garantias transacionais existentes
richTextResources fornece texto CSS vinculado e importado pela operação execute-json-v1 inalterada
Use FPC 3.3.1 ou mais recente com units de runtime correspondentes e registre a build real do compilador usada para a aceitação
O parsing de operações JSON preserva NULs escapados e chaves de objetos Unicode em ambas as linhas suportadas de compiladores FPC; um NUL em richTextResources é rejeitado antes de o documento mudar, em vez de desaparecer silenciosamente durante a decodificação JSON
O gate reutilizável Tests/Linux/JSONOperationUnicode/Run.py checa o parser selecionado do produto, enquanto a suíte real de callbacks também checa a shared library compilada e a transação PDF