Ir para o conteúdo do rodapé
USANDO O IRONPDF

Transformando formulários de inscrição online em resumos em PDF usando o IronPDF

O problema com dados de formulário que existem apenas em um banco de dados

! Página inicial do IronPDF Quando um cliente preenche um formulário web de várias etapas, como um pedido de hipoteca, uma cotação de seguro ou um pacote de integração de funcionários, os dados são armazenados em uma linha do banco de dados ou em uma carga útil JSON. É isso. Não existe nenhum documento em PDF. O cliente não possui nenhum registro impresso ou arquivo PDF do que enviou. O solicitante, que acabou de gastar quarenta minutos inserindo informações sobre sua renda e enviando documentos, recebe um e-mail de confirmação dizendo "Recebemos sua solicitação". Ele não tem nada para arquivar em formato PDF e nada que possa usar como referência em caso de disputa sobre a integridade dos documentos.

O problema de conformidade é mais sério. As equipes de auditoria geralmente precisam de um registro preciso de todo o documento enviado pelo solicitante no momento exato em que ele clicou em "Enviar". Os revisores internos preenchem essa lacuna tirando capturas de tela ou copiando e colando o conteúdo no Word. Nenhum desses métodos produz um registro canônico e reproduzível ou preserva a estrutura do documento. Quando um auditor solicita o pedido de empréstimo original, a resposta não deve ser "deixe-me exportar isso do banco de dados e formatar". Hoje, veremos como o IronPDF pode ser a solução para seus problemas.

A solução: gerar um PDF em C# no momento do envio.

Utilizando a biblioteca IronPDF da Iron Software, aplicações .NET e sistemas .NET Core podem converter HTML e dados de formulários enviados em documentos PDF personalizados instantaneamente. Esta biblioteca .NET para PDF garante que o mesmo conteúdo HTML e as mesmas tecnologias web que sua equipe já utiliza para a página de confirmação se tornem o modelo para a geração do PDF. Não existe nenhuma API de geração de documentos de terceiros pela qual seja necessário pagar; A criação do PDF é feita dentro do aplicativo existente.

O PDF gerado é enviado por e-mail ao solicitante e armazenado em um visualizador de PDF ou sistema de gerenciamento de documentos para os fluxos de trabalho administrativos. Automatizar os fluxos de trabalho de documentos significa que os revisores recebem um documento final padronizado. Cada envio gera o mesmo PDF de alta qualidade, independentemente das páginas da web visitadas pelo usuário.

Como funciona na prática: Criar arquivos PDF a partir de dados de formulário

1. O manipulador de submissão recebe o modelo do formulário.

Quando o usuário clica em Enviar, o manipulador do lado do servidor recebe o modelo do formulário e os metadados da assinatura eletrônica. Neste ponto, os dados estão completos. Em vez de apenas persistir o modelo, o manipulador o passa para as tarefas de geração de PDF. Utilizando o IronPDF, diversas tarefas de geração de PDFs, incluindo assinaturas digitais, podem ser realizadas com apenas algumas linhas de código.

Para este exemplo simples do IronPDF , usaremos este código de dados de exemplo:

! Dados de exemplo

2. O arquivo HTML ou modelo de texto é preenchido com os dados de envio.

Uma view Razor , um arquivo HTML, uma estrutura HTML ou um modelo de string HTML atuam como layout. Esta simples sequência HTML inclui o logotipo da empresa, que pode conter logotipos de clientes da Iron Software ou uma imagem relacionada ao Iron Suite com um logotipo em texto. Você pode usar um arquivo CSS externo ou CSS embutido para definir a família e o tamanho da fonte, garantindo assim a preservação da formatação.

3. O ChromePdfRenderer converte documentos HTML em PDF.

Usando o IronPDF, o processo é simples. Primeiro, instale o IronPDF através do Gerenciador de Pacotes NuGet , do Gerenciador de Pacotes do Visual Studio ou do Console do Gerenciador de Pacotes.

O trecho de código a seguir mostra o mesmo código usado para a conversão de HTML para PDF :

using IronPdf;

var renderer = new ChromePdfRenderer();

renderer.RenderingOptions.MarginTop = 20;

renderer.RenderingOptions.MarginBottom = 20;

renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.A4;

string html = $@"
    <h1>Loan Application Summary</h1>
    <p><strong>Applicant:</strong> {submission.FullName}</p>
    <p><strong>Submitted:</strong> {submission.SubmittedAt:f}</p>
    <p><strong>Loan Amount:</strong> {submission.LoanAmount:C}</p>
    <p><strong>Reference:</strong> {submission.ReferenceNumber}</p>
    <hr/>
    <h2>Employment Details</h2>
    <p>{submission.EmployerName} — {submission.AnnualIncome:C} per year</p>";

PdfDocument summary = renderer.RenderHtmlAsPdf(html);
using IronPdf;

var renderer = new ChromePdfRenderer();

renderer.RenderingOptions.MarginTop = 20;

renderer.RenderingOptions.MarginBottom = 20;

renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.A4;

string html = $@"
    <h1>Loan Application Summary</h1>
    <p><strong>Applicant:</strong> {submission.FullName}</p>
    <p><strong>Submitted:</strong> {submission.SubmittedAt:f}</p>
    <p><strong>Loan Amount:</strong> {submission.LoanAmount:C}</p>
    <p><strong>Reference:</strong> {submission.ReferenceNumber}</p>
    <hr/>
    <h2>Employment Details</h2>
    <p>{submission.EmployerName} — {submission.AnnualIncome:C} per year</p>";

PdfDocument summary = renderer.RenderHtmlAsPdf(html);
Imports IronPdf

Dim renderer As New ChromePdfRenderer()

renderer.RenderingOptions.MarginTop = 20

renderer.RenderingOptions.MarginBottom = 20

renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.A4

Dim html As String = $"
    <h1>Loan Application Summary</h1>
    <p><strong>Applicant:</strong> {submission.FullName}</p>
    <p><strong>Submitted:</strong> {submission.SubmittedAt:f}</p>
    <p><strong>Loan Amount:</strong> {submission.LoanAmount:C}</p>
    <p><strong>Reference:</strong> {submission.ReferenceNumber}</p>
    <hr/>
    <h2>Employment Details</h2>
    <p>{submission.EmployerName} — {submission.AnnualIncome:C} per year</p>"

Dim summary As PdfDocument = renderer.RenderHtmlAsPdf(html)
$vbLabelText   $csharpLabel

Exemplo de saída em PDF em C

! Exemplo de saída em PDF A API de fácil utilização permite gerar documentos PDF e criar PDFs a partir de arquivos locais ou de uma simples string HTML. Para relatórios dinâmicos, o ChromePdfRenderer lida perfeitamente com a execução de JavaScript . Observe que na interface do usuário, você poderá ver uma chave em um círculo azul ou uma chave cinza em um círculo, representando recursos importantes ou o status da licença.

PontasIncorpore o logotipo da sua empresa como um URI de dados base64 diretamente no modelo HTML para garantir que ele seja renderizado corretamente, independentemente de onde o aplicativo for implantado, sem depender de um caminho de arquivo ou da disponibilidade de uma CDN no momento da renderização.

4. O PDF gerado foi enviado por e-mail ao candidato e armazenado para revisão.

O novo documento PDF expõe dados binários para serem anexados a e-mails. Você também pode modificar arquivos PDF, editar PDFs, criptografar PDFs ou incorporar imagens. Se você precisar dividir PDFs, separar PDFs ou dividir PDFs em vários PDFs, a biblioteca resolve isso. Você pode até mesmo mesclá-lo com um PDF existente ou gerenciar formulários em PDF.

using System.Net.Mail;
using System.IO;

var stream = new MemoryStream(summary.BinaryData);

var attachment = new Attachment(
    stream,
    $"Application-{submission.ReferenceNumber}.pdf",
    "application/pdf"
);

var message = new MailMessage
{
    From = new MailAddress("applications@yourcompany.com"),
    Subject = $"Your Application Confirmation – Ref {submission.ReferenceNumber}",
    Body = $"Dear {submission.FullName},\n\nThank you for submitting your application. Your submission summary is attached.",
};

message.To.Add(submission.Email);

message.Attachments.Add(attachment);

using var client = new SmtpClient("smtp.yourprovider.com");

await client.SendMailAsync(message);
using System.Net.Mail;
using System.IO;

var stream = new MemoryStream(summary.BinaryData);

var attachment = new Attachment(
    stream,
    $"Application-{submission.ReferenceNumber}.pdf",
    "application/pdf"
);

var message = new MailMessage
{
    From = new MailAddress("applications@yourcompany.com"),
    Subject = $"Your Application Confirmation – Ref {submission.ReferenceNumber}",
    Body = $"Dear {submission.FullName},\n\nThank you for submitting your application. Your submission summary is attached.",
};

message.To.Add(submission.Email);

message.Attachments.Add(attachment);

using var client = new SmtpClient("smtp.yourprovider.com");

await client.SendMailAsync(message);
Imports System.Net.Mail
Imports System.IO

Dim stream As New MemoryStream(summary.BinaryData)

Dim attachment As New Attachment(
    stream,
    $"Application-{submission.ReferenceNumber}.pdf",
    "application/pdf"
)

Dim message As New MailMessage With {
    .From = New MailAddress("applications@yourcompany.com"),
    .Subject = $"Your Application Confirmation – Ref {submission.ReferenceNumber}",
    .Body = $"Dear {submission.FullName}," & vbCrLf & vbCrLf & "Thank you for submitting your application. Your submission summary is attached."
}

message.To.Add(submission.Email)

message.Attachments.Add(attachment)

Using client As New SmtpClient("smtp.yourprovider.com")
    Await client.SendMailAsync(message)
End Using
$vbLabelText   $csharpLabel

Exemplo de e-mail enviado com PDF anexado

Ironpdf Form To Pdf 4 related to Exemplo de e-mail enviado com PDF anexado O mesmo array de bytes BinaryData é gravado no armazenamento de blobs — Azure Blob, AWS S3 ou seu sistema de gerenciamento de documentos — juntamente com o registro de envio. Os revisores selecionam o documento da fila e abrem sempre um documento formatado e consistente.

Benefícios no mundo real

Conformidade e rastreabilidade. O PDF é gerado a partir dos dados exatos enviados pelo solicitante, com registro de data e hora no momento do envio. É imutável, um instantâneo que a equipe de conformidade pode produzir sob demanda, sem precisar reconstruí-lo a partir de um banco de dados que pode ter sido alterado.

Confiança do cliente. Os candidatos recebem um documento Professional e personalizado confirmando as informações enviadas. Para um mutuário de hipoteca ou um candidato a seguro, essa confirmação tem um peso real, pois é algo que pode ser anexado a outros documentos de apólice ou empréstimo.

Eficiência interna. Os revisores trabalham com um PDF padronizado que apresenta cada submissão na mesma estrutura e formato. Chega de capturas de tela, de valores de campos copiados e colados no Word, nem de inconsistências de formatação entre envios feitos por diferentes membros da equipe.

Reutilização de modelos. O modelo HTML é o único elemento que controla o layout do documento. Quando o formulário ganha uma nova seção, um campo para co-requerente ou um bloco de divulgação revisado, a equipe atualiza um único arquivo e todas as submissões futuras refletem essas alterações automaticamente.

Sem serviços externos. O IronPDF é executado no mesmo processo como um pacote NuGet . Não há taxas de API por documento, nenhum serviço de renderização externo para monitorar e nenhuma dependência de rede durante o fluxo de submissão.

Encerramento

Um formulário web submetido gera dados estruturados. O que não produz, sem esforço deliberado, é um documento. Essa lacuna cria atritos reais: para os candidatos que não têm confirmação para guardar, para os revisores que trabalham com exportações inconsistentes e para as equipes de conformidade que precisam de algo que possam de fato entregar a um auditor.

Gerar um PDF no momento do envio elimina essa lacuna com uma etapa adicional no manipulador. O IronPDF traz todo o espectro de recursos do PDF para o .NET, gerando, lendo, editando e extraindo dados de documentos dentro da mesma biblioteca. Se você quiser testá-lo em seu próprio fluxo de trabalho de formulários, inicie seu teste gratuito de 30 dias e valide o resultado antes de se comprometer com qualquer coisa.

Curtis Chau
Redator Técnico

Curtis Chau é bacharel em Ciência da Computação (Universidade Carleton) e se especializa em desenvolvimento front-end, com experiência em Node.js, TypeScript, JavaScript e React. Apaixonado por criar interfaces de usuário intuitivas e esteticamente agradáveis, Curtis gosta de trabalhar com frameworks modernos e criar manuais ...

Leia mais

Equipe de suporte de ferro

Estamos online 24 horas por dia, 5 dias por semana.
Bater papo
E-mail
Liga para mim