AEM 6.4 chegou ao fim do suporte estendido e esta documentação não é mais atualizada. Para obter mais detalhes, consulte nossa períodos de assistência técnica. Encontre as versões compatíveis here.
Ajuste seu Forms HTML5 baseado em XFA para obter o melhor desempenho.
O AEM Forms tem um componente chamado formulários HTML5. Ajuda a renderizar PDF forms com base em XFA (arquivos XDP) existentes no formato HTML5. Este documento fornece diretrizes e recomendações para reduzir o tempo de carregamento e melhorar o desempenho dos formulários HTML5 em dispositivos móveis.
A maioria dos dispositivos móveis tem um poder de processamento e recursos de memória limitados. Ajuda a melhorar o tempo de espera dos dispositivos móveis. Os navegadores da Web em execução em um dispositivo móvel têm acesso a recursos limitados (memória limitada e recursos de processamento). Quando o limite é atingido, o comportamento do navegador fica lento. Este documento fornece recomendações para manter o tamanho de um formulário HTML5 sob controle. Um formulário menor não quebra limites de memória e potência de processamento de um dispositivo e fornece uma experiência perfeita.
Embora as recomendações discutidas neste artigo sejam direcionadas para formulários HTML5, no entanto, elas são igualmente aplicáveis a PDF forms baseados em XFA. Essas práticas recomendadas contribuem coletivamente para o desempenho geral dos formulários HTML5. Requer um planeamento cuidadoso para desenvolver formas eficientes e produtivas. Vamos começar:
Geralmente, um formulário XFA tem vários elementos. Por exemplo, tabela, campo de texto e imagens. Cada elemento tem várias propriedades para controlar o comportamento e a aparência do elemento. Quando um formulário XFA é renderizado no formato HTML5, todos os elementos XFA e as propriedades correspondentes são convertidos em nós Modelo ou HTML DOM. Esses nós adicionam ao tamanho e à complexidade de um DOM. Tornar o formulário HTML5 lento para renderização.
É mais fácil para os navegadores renderizar um DOM mais claro. Assim, você pode executar as seguintes otimizações em um formulário XFA para reduzir o número de nós. Portanto, gere uma estrutura DOM simples:
Um formulário HTML5 pode conter vários recursos externos, como arquivos de imagem, JavaScript e CSS. Toda vez que um navegador solicita um formulário, os recursos externos são enviados pela rede. O tempo necessário para viajar pela rede é diretamente proporcional ao tamanho dos arquivos.
Assim, reduzir o tamanho dos recursos externos e utilizar apenas os recursos absolutamente necessários é o método preferido para melhorar o desempenho dos formulários. Você pode executar as seguintes otimizações em um formulário XFA para reduzir o tamanho dos recursos externos de um formulário:
Um formulário HTML5 pode ser executado em centenas de páginas. Um formulário com um grande número de campos é carregado lentamente no navegador. Você pode executar as seguintes otimizações em um formulário XFA para otimizar os formulários com um grande número de campos e páginas:
Formulários HTML5 podem conter campos orientados por dados (tabelas e subformulários). Esses campos expandem o tamanho do formulário no tempo de execução. Por exemplo, uma tabela orientada por dados em um formulário HTML5 pode se estender para milhares de linhas. Essas tabelas podem causar degradação do layout e do desempenho. As otimizações sugeridas abaixo podem ajudar você a reduzir o tempo de carregamento dos formulários HTML5 com campos orientados por dados:
Use scripts XFA para obter a navegação por página e exibir campos orientados por dados (tabelas e subformulários). Na navegação por página, somente os dados específicos são exibidos em uma página. Limita a operação de pintar do navegador aos campos que estão sendo exibidos de cada vez e facilita a navegação de um formulário. Além disso, os usuários dos dispositivos móveis estão interessados apenas em um subconjunto de dados. Ajuda você a fornecer uma excelente experiência do usuário e reduz o tempo necessário para carregar os dados necessários. Você tem duas soluções pelo preço de uma. Observe também que a navegação por paginação não está disponível imediatamente. Você pode usar scripts XFA para desenvolver a navegação por paginação.
Avalie a mesclagem de várias colunas somente leitura em uma única coluna. Reduz a memória necessária para exibir o formulário. Além disso, evite exibir as colunas que não exigem entradas dos usuários.
Avaliar a divisão do formulário controlado por dados em um conjunto de formulários, se as sugestões acima não produzirem muitas melhorias. Por exemplo, se uma tabela tiver mais de 1000 linhas, mova cada 100 linhas para um formulário diferente. Isso ajudaria a melhorar o tempo de carregamento e o desempenho dos formulários. Observe também que um conjunto de formulários produz um XML de envio consolidado para todos os formulários. Para diferenciar dados de cada formulário, use raízes de dados diferentes. Para obter mais informações, consulte Conjunto de formulários no AEM Forms.
Um formulário XFA pode ter um grande número de seções dedicadas apenas ao Documento de registro (DOR). Para reduzir o número de nós e melhorar o desempenho desse formulário, é possível manter diferentes cópias do formulário - uma cópia para preencher o formulário e outra para gerar o Documento de registro no servidor. Na cópia para preencher o formulário XFA, mostrar campos necessários apenas para capturar dados. No Documento de registro do, mantenha os campos obrigatórios somente na saída impressa do formulário. Antes de escolher a abordagem sugerida, avalie o ganho de desempenho e a sobrecarga de manutenção.
Os formulários Adobe Experience Manager (AEM) podem ajudar você a transformar transações complexas em experiências digitais simples e deliciosas. No entanto, requer um esforço concertado para desenvolver formas eficientes e produtivas. Além do HTML5 Forms, veja algumas leituras recomendadas para práticas recomendadas gerais de AEM:
Você pode imprimir o seguinte cartão (clique no cartão para baixar uma versão de alta resolução) e mantê-lo em sua mesa para obter uma referência rápida: