Plano de Entrega de Melhorias do HotPDF
Iniciado em 8 de outubro de 2026 sobre a versão 2.800.2; a checklist original de onze workstreams abaixo registra a entrega dos perfis de suporte delimitados dela até a versão 2.820.0
O objetivo posterior de conclusão de capacidades restantes está ativo; a checklist histórica não estabelece a conclusão de renderização geral, transporte FDF, CSS de rich text nem compatibilidade com XFA dinâmico
Trabalho concluído exige APIs públicas funcionando, checagens de aceitação não-GUI com significado, documentação canônica em inglês americano, metadados de release sincronizados e um commit de release local
Compatibilidade é definida por entradas suportadas explícitas e diagnósticos observáveis; um placeholder de interface, uma implementação não verificada ou uma rejeição de recurso não suportado não conclui a funcionalidade correspondente
Checklist de entrega
| Frente de trabalho | Critérios de aceitação | Status |
|---|---|---|
| Paridade JSON e C ABI | Exportações estruturadas HTML/XHTML/XML/JSON e CSV/JSON de tabelas tipadas, engines OCR externos, assinatura incremental e campos de assinatura existentes, comparação de documentos, descoberta de capacidades, cancelamento, limites de recursos e publicação segura quanto a falhas | Em andamento: exportações estruturadas e de tabelas tipadas implementadas; faltam OCR externo, assinatura incremental e comparação |
| Templates de negócio HTML | Imagens e controles de formulário dentro de flex/grid, containers aninhados, linhas flex com quebra, spans de coluna de grid, recursos font-face controlados e fixtures de regressão para faturas, relatórios e contratos de duas colunas | Concluído: layouts de negócio aninhados, wrapping/spans, imagens/formulários e fontes controladas verificados em Win32/Win64 |
| Processamento de documentos digitalizados | Orientação de página inteira, correção de inclinação em ângulos arbitrários, limpeza de bordas/sombras, correção de perspectiva limitada, mapeamento de coordenadas invertível e um fluxo de OCR para dados estruturados | Planejado |
| Conversão de arquivamento PDF/A | Composição opcional de aparências visíveis de anotações/widgets, retenção de texto pesquisável, um perfil de conversão documentado que preserva texto/vetores, validação, relatório explícito de perdas e saída atômica | Planejado |
| Comparação de contratos | Alinhamento de parágrafos, registros de inserção/exclusão/substituição de palavra/frase com as duas posições na origem, exclusão configurável de boilerplate e saída de revisão em PDF ou HTML anotado | Concluído: edições de contrato bilaterais, movimentações, exclusões e artefatos de revisão verificados em Delphi e FPC |
| Edição limitada de parágrafos | Reflow dentro de um retângulo de página explícito, mudanças de fonte e de largura, relatório de colisão com conteúdo adjacente, preview/commit/rollback e edição suportada de texto entre linhas de base e em formulários | Planejado |
| Exportação de tabelas XLSX | XLSX independente do Office com números/datas/moedas/porcentagens tipados, células mescladas, metadados de página de origem, recursos limitados e saída segura quanto a falhas | Concluído: pastas de trabalho nativas, JSON e C ABI, com aceitação em Win32/Win64 e leitores independentes |
| Perfis de fatura eletrônica | Registro de regras de perfil com versão, despacho Factur-X correto, recursos dedicados dos perfis XRechnung e francês, escopo de validação explícito e fixtures oficiais de aceitação válidos/inválidos | Concluído: registro com versão, camadas oficiais XRechnung e CTC francesa e aceitação real com Saxon |
| Implantação Linux headless | Builds ELF Linux reais e aceitação não-GUI para parsing, texto, formulários, segurança/assinaturas e renderização suportada, sem Windows nem desktop ativo | Em andamento: parsing portátil Linux real, I/O de objetos, compressão, criptografia, writer e caminhos de texto/fonte; falta a integração completa de documento, formulário, assinatura e renderização |
| Compatibilidade com XFA dinâmico | Eventos condicionais com orçamento, data binding explícito, apresentação por instância, integração com o painter e a acessibilidade do host e fixtures reproduzíveis de formulários dinâmicos | Planejado |
| Reconhecimento de códigos de barras | Múltiplos símbolos por raster, amostragem em perspectiva de Data Matrix, reconhecimento limitado, coordenadas na origem e fixtures de símbolos rotacionados/em perspectiva/danificados | Em andamento: aceitação de regressão multi-símbolo e em perspectiva concluída; falta a integração |
Evidências de release
A versão 2.801.0 adiciona as operações de exportação estruturada e de tabelas tipadas; as suítes de operações Win32 e Win64 passam em 121 testes cada, incluindo 30 novos casos de exportação, e leitores independentes de JSON/XML/HTML/CSV verificam a DLL real da ABI Win64 com callbacks parciais, falha de orçamento e cancelamento de publicação
A versão 2.802.0 adiciona a exportação XLSX nativa, JSON e C ABI; Win32 e Win64 passam em 134 casos de operações e pastas de trabalho cada, enquanto a saída real da DLL passa em CRC de ZIP e parsing XML independente com valores tipados e seleção de páginas de origem
A versão 2.803.0 adiciona registros explícitos de regras de fatura e a validação oficial XRechnung e CTC francesa; Win32 e Win64 passam em 17 casos cada, incluindo amostras positivas e negativas reais de regras nacionais, configurações inválidas de engine, rejeição de DTD e saída de processo limitada
A versão 2.804.0 lança o núcleo portátil Linux com oito grupos de regressão no FPC Linux nativo 3.2.2 e 3.3.1, replicando as checagens de compilação do Windows, e aliases de tipo Delphi/C++Builder preservados; a aceitação completa de documento, formulário, assinatura e renderização no Linux segue em andamento
A versão 2.805.0 conclui a frente de templates de negócio HTML com 28 casos de regressão Win32 e 28 Win64, recarregamentos reais de PDF, campos nativos, objetos de imagem, embutimento controlado de fontes e checagens de fallback e de orçamento de recursos
A versão 2.806.0 conclui a frente de comparação de contratos com 10 casos Delphi Win32 e 10 Win64 e cinco grupos de aceitação FPC por plataforma, cobrindo edições reais de redação em múltiplas páginas, parágrafos entre páginas, cláusulas duplicadas, saída de revisão Unicode, rejeição de origem desatualizada, orçamentos e cancelamento
A versão 2.807.0 conclui a frente de reconhecimento de códigos de barra com 99 checagens Win32 e 99 Win64, incluindo 18 checagens novas de símbolos mistos, perspectiva, símbolos danificados, preservação da origem, geometria, orçamento e cancelamento; o FPC do Windows compila em ambas as plataformas o scanner nativo e os helpers de geometria
A versão 2.808.0 adiciona carregamento nativo headless de documentos classic-xref, recursos herdados e texto de Forms aninhados, inspeção e preenchimento de valores AcroForm Unicode, e saves incrementais atômicos limitados; seis targets nativos de FPC 3.2.2/3.3.1 de Linux e de FPC/Delphi do Windows passam cada um 46 asserções, enquanto interfaces C++ geradas e leitores independentes pypdf/MuPDF verificam este primeiro profile de documentos
A versão 2.809.0 adiciona Tesseract CLI/DLL e RapidOCR CLI/DLL aos jobs de OCR JSON e C ABI; Win32 e Win64 verificam cada um 39 casos de operação novos e 134 casos de operação/export existentes, enquanto Tesseract real e leitores PDF independentes verificam texto pesquisável e pixels de scan inalterados pela DLL real de ABI Win64
A versão 2.810.0 conclui o pré-processamento de scan e o OCR estruturado com 16 testes Delphi Win32 e 16 Win64 e seis checagens reais de FPC do Windows por plataforma; Tesseract ao vivo verifica quatro orientações e seis variantes corrigidas de raster incluindo um scan de 37,5 graus, enquanto geometria até ±179,25 graus, limites de trabalho/alocação, overflow de output de processo, cancelamento em curso, preservação da origem e saída semântica são verificados
A versão 2.811.0 adiciona validação compartilhada de xref streams e object streams, precedência de revisões híbridas, tokens numéricos largos exatos e round trips preservando a origem para objetos comprimidos; a aceitação nativa de documentos/core de Linux e Windows e leitores independentes verificam o profile expandido, e 66 casos de regressão do parser por plataforma Delphi retêm os gates de desempenho existentes
A versão 2.812.0 conclui a frente de aprimoramento de arquivamento PDF/A; Delphi Win32 e Win64 passam cada um 24 casos de preservação e 47 casos raster existentes, interfaces novas de FPC do Windows e C++Builder compilam, pypdf/MuPDF independentes verificam conteúdo e recursos originais, e três artefatos gerados de appearance/OCR passam no veraPDF PDF/A-4 com zero regras ou checagens falhadas
A versão 2.813.0 conclui a edição limitada de parágrafos com 20 casos Delphi por arquitetura e sete grupos de aceitação FPC por arquitetura, mais checagens independentes de texto/render nas quatro saídas; regressões de saves repetidos retêm as edições depois que o grafo foi descarregado
A versão 2.814.0 adiciona security AES-256 ao profile nativo headless; dois toolchains reais de FPC de Linux, dois targets de FPC do Windows e dois targets Delphi passam cada um 64 asserções de baseline, 81 de provider e 82 de documentos criptografados, headers públicos de C++Builder compilam, e leitores estritos independentes validam 36 saídas criptografadas e os prefixos de origem preservados delas
A versão 2.815.0 conclui a frente de host adapters XFA dinâmicos pelo profile de helper de instance presentation documentado; cada arquitetura Delphi passa 23 casos novos e 83 de compatibilidade, fontes FPC novas e os dois targets de headers de C++Builder compilam, e leitores pypdf/XML independentes verificam os dados e identidades persistidos
A versão 2.816.0 adiciona CMS OpenSSL 3 nativo em streaming e verificação exata de assinaturas PDF; seis targets nativos de compiladores Linux/Windows passam cada um 40 asserções de provider e 13 de documentos, verifiers originais do Windows autenticam as assinaturas geradas, os dois headers públicos de C++Builder compilam, e checagens independentes de OpenSSL/pypdf/MuPDF verificam os fixtures reais de DER e de PDF
A versão 2.817.0 completa a paridade JSON/C ABI: cada arquitetura passa 34 asserções de assinatura nativas/FPC, 516 asserções reais de assinatura pela DLL e 11 checagens CMS independentes; a comparação passa 28 asserções nativas/FPC e 82 reais pela DLL por arquitetura mais 123 checagens independentes de JSON/HTML/PDF, e as regressões existentes de operações, ABI e OCR permanecem verdes
A versão 2.818.0 adiciona publicação nativa headless de assinaturas PDF incrementais; cada um dos seis targets de compiladores Linux/Windows passa 45 asserções de assinatura plain/CAdES e 31 criptografadas, as duas interfaces de C++Builder compilam, e leitores independentes e OpenSSL verificam 54 PDFs reais e 60 assinaturas ByteRange sem enfraquecer as checagens de assinaturas criptografadas
A versão 2.819.0 adiciona rendering nativo CPU Cairo/FreeType para PNG e advances canônicos de fontes padrão; dois toolchains nativos de FPC de Linux passam cada um 128 asserções limitadas de rendering e 946 asserções independentes de pixels/geometria pypdf/MuPDF, quatro targets de compiladores do Windows compilam de fontes novas, os dois headers públicos de C++Builder compilam, e regressões de fontes padrão coincidem com 1085 origens independentes de caracteres em 15 páginas reais
A versão 2.820.0 conclui a frente nativa de Linux com appearances reais de widgets Unicode embutidas: cada toolchain de FPC de Linux passa 19 asserções de metadados e 58 de appearances, cada um dos quatro targets de compiladores do Windows passa 19 e 52, as duas interfaces de C++Builder compilam, e leitores independentes validam 42 PDFs reais com 1294 asserções incluindo prefixos de origem originais, security AES, dados exatos de fonte/glyph/ToUnicode e fidelidade raster
Todas as onze frentes de aprimoramento estão concluídas sob os contratos limitados de suporte documentados delas, com documentação canônica en-us e commits locais de versões released; extensões futuras de plataforma ou de padrões PDF são registradas separadamente deste objetivo concluído
Conclusão ativa de capacidades
O plano de conclusão registra os releases posteriores e o trabalho restante; implementações candidatas e resultados parciais de targets não estabelecem um recurso lançado nem a conclusão do objetivo
| Entrega ativa | Aceitação restante |
|---|---|
| Transporte de FDF e anotações | Construir sobre os lançados 2.973.0 grafos de objetos binários de anotações FDF, estados de aparências, recursos compartilhados e substituição transacional e 2.974.0 remoção transacional de anotações; completar exclusão de field-trees de Widgets, arquivos embutidos, cadeias de actions mais amplas e modelagem adicional de políticas de campos com verificação independente da saída |
| Renderização nativa | Construir sobre os lançados 2.972.0 aparências default de anotações e clipping de texto; completar fontes variáveis não default, estados de gráficos adicionais, combinações de fontes e transforms, comparações independentes de geometria e raster, políticas de impressão e reconstrução de fontes de teste |
| CSS e layout de rich text | Construir sobre folhas de estilo, perfis de media, recursos externos e math numérico finito lançados; completar propriedades, seletores e recursos de media adicionais, tabelas, imagens e layout geral |
| Runtime de XFA dinâmico | Edição geral de DOM de templates e formulários, remerge explícito, regras de ocorrência e binding, aliases estáveis, mídia externa e consumers adicionais com cancelamento transacional e verificação persisted-reader |
A implementação FPC atual e a aceitação de release exigem versão 3.3.1 ou mais recente em todas as plataformas e registram a build real do compilador; resultados de compiladores mais antigos acima retêm suas identidades históricas e não são gates de release atuais
Restrições de execução
Trabalhe diretamente no diretório canônico do projeto, preserve edições alheias, rode as checagens não-GUI com a abertura de visualizador suprimida, faça stage apenas das mudanças da tarefa e nunca faça push
Atualize apenas a documentação canônica en-us durante a implementação; a sincronização de traduções é uma tarefa separada