Como salvar e editar o histórico de revisões de um PDF em C#

Como Salvar e Editar PDF: Histórico de Revisões em C

This article was translated from English: Does it need improvement?
Translated
View the article in English

O IronPDF permite que desenvolvedores C# rastreiem e gerenciem alterações em documentos PDF ao longo do tempo, utilizando o histórico de revisões. Salve as iterações do documento com o método SaveAsRevision e reverta para versões anteriores com GetRevision ao colaborar em documentos.

Início rápido: Salvar revisões de PDF com o IronPDF

Gerencie e salve revisões de PDFs usando o IronPDF em seus aplicativos C#. Este guia demonstra como salvar versões de documentos com o método SaveAsRevision do IronPDF para rastrear e gerenciar alterações em PDFs. Carregue um arquivo PDF e salve-o como uma revisão distinta para arquivar todas as modificações.

  1. Instale IronPDF com o Gerenciador de Pacotes NuGet

    PM > Install-Package IronPdf
  2. Copie e execute este trecho de código.

    var pdf = IronPdf.PdfDocument.FromFile("example.pdf");
    pdf.SaveAsRevision("revision1.pdf");
  3. Implante para testar em seu ambiente de produção.

    Comece a usar IronPDF em seu projeto hoje com uma avaliação gratuita

    arrow pointer

as-heading:3(Fluxo de trabalho mínimo (5 etapas))

  1. Baixe a biblioteca C# para salvar e editar o histórico de revisões de PDFs com o IronPDF.
  2. Use o método SaveAsRevision para salvar versões em PDF.
  3. Recupere as versões em PDF usando o método GetRevision.
  4. Acesse a propriedade RevisionCount para obter a contagem de revisões.
  5. Salve o PDF final usando SaveAs.

Como faço para salvar e assinar uma versão revisada em PDF?

No exemplo a seguir, abrimos um arquivo PDF, fazemos várias edições e, em seguida, o assinamos antes de salvá-lo. Para permissões de assinatura, permitimos apenas o preenchimento do formulário, com edições futuras permitidas; Caso contrário, a assinatura será invalidada para qualquer outra edição.

Em seguida, chamamos SaveAsRevision para salvar a revisão no histórico e salvar nosso novo documento no disco. Essa abordagem é útil ao implementar fluxos de trabalho de assinatura digital em aplicações empresariais onde a integridade dos documentos e os registros de auditoria são essenciais.

ObservePara melhorar o desempenho da exportação de PDF, definimos a opção TrackChanges como falsa. Esta opção deve ser definida como verdadeira para usar o recurso de salvamento incremental.

:path=/static-assets/pdf/content-code-examples/how-to/signing-revision.cs
using IronPdf;
using IronPdf.Rendering;

// Import PDF and enable TrackChanges
PdfDocument pdf = PdfDocument.FromFile("annual_census.pdf", TrackChanges: ChangeTrackingModes.EnableChangeTracking);
// ... various edits ...
pdf.SignWithFile("/assets/IronSignature.p12", "password", null, IronPdf.Signing.SignaturePermissions.AdditionalSignaturesAndFormFillingAllowed);

PdfDocument pdfWithRevision = pdf.SaveAsRevision();

pdfWithRevision.SaveAs("annual_census_2.pdf");
Imports IronPdf
Imports IronPdf.Rendering

' Import PDF and enable TrackChanges
Private pdf As PdfDocument = PdfDocument.FromFile("annual_census.pdf", TrackChanges:= ChangeTrackingModes.EnableChangeTracking)
' ... various edits ...
pdf.SignWithFile("/assets/IronSignature.p12", "password", Nothing, IronPdf.Signing.SignaturePermissions.AdditionalSignaturesAndFormFillingAllowed)

Dim pdfWithRevision As PdfDocument = pdf.SaveAsRevision()

pdfWithRevision.SaveAs("annual_census_2.pdf")
$vbLabelText   $csharpLabel

O parâmetro ChangeTrackingModes.EnableChangeTracking é essencial para manter um registro de auditoria completo. Quando ativado, o IronPDF preserva todas as modificações do documento como camadas separadas, permitindo a navegação pelo histórico do documento. Essa funcionalidade integra-se à segurança e às permissões de PDF para garantir que apenas usuários autorizados possam acessar revisões específicas.

Por que entender o salvamento incremental é importante para assinaturas?

Embora alguns visualizadores, como o navegador Chrome, mostrem apenas uma versão, os arquivos PDF podem armazenar versões anteriores do documento, de forma semelhante ao histórico de commits do Git. Você verá isso em visualizadores de PDF avançados, como o Adobe Acrobat. Compreender esse mecanismo de salvamento incremental é crucial ao trabalhar com PDFs assinados, pois cada assinatura se aplica a um estado específico do documento.

Ao lidar com assinaturas em PDF, lembre-se de que assinar um PDF se aplica à versão atual do documento. Seu PDF pode conter assinaturas de versões antigas ou versões não assinadas. Podemos visualizar um exemplo como este:

Iteração de documento PDF Certificado A Certificado B Certificado C Certificado D
0 (primeiro salvamento)
1
2
3
(somente edições de campos de formulário)

(somente edições de campos de formulário)
4 (apenas campos do formulário editados)
5
(Não são permitidas mais edições)

(Não são permitidas mais edições)

(Não são permitidas mais edições)

Acima, temos um documento que passou por 6 iterações. Este documento pode ser distribuído entre os departamentos de uma empresa, mediante aprovação, até ser finalizado na iteração 3. Nesta iteração, tanto a Pessoa A quanto a Pessoa B assinaram o documento com a permissão "Somente edições de campos do formulário" definida. Isso significa que o preenchimento dos campos do formulário no documento PDF é permitido, mas qualquer outra alteração no documento invalidará as assinaturas.

No exemplo acima, suponha que a Pessoa C preencheu o formulário e o enviou de volta para as Pessoas A, B e D, que assinaram o documento pela última vez com a permissão "Sem edições permitidas". Como nenhuma ação de invalidação foi tomada neste documento, quando executamos o método de assinatura do IronPDF, obtemos verdadeiro .

Essa abordagem de economia incremental é valiosa quando combinada com recursos abrangentes de segurança de PDF , pois garante que cada assinatura permaneça válida apenas para o estado específico do documento ao qual foi aplicada. Isso impede modificações não autorizadas, mantendo ao mesmo tempo um registro completo de todas as alterações.

Como faço para reverter para uma versão anterior?

Para reverter para uma revisão anterior de um PDF, use o método GetRevision. Isso irá desconsiderar quaisquer alterações feitas desde esta revisão, incluindo assinaturas mais recentes. Essa funcionalidade é essencial quando você precisa se recuperar de alterações indesejadas ou ao revisar a evolução do documento ao longo do tempo.

:path=/static-assets/pdf/content-code-examples/how-to/signing-revert-revision.cs
using IronPdf;

PdfDocument pdf = PdfDocument.FromFile("report.pdf");

int versions = pdf.RevisionCount; // total revisions

PdfDocument rolledBackPdf = pdf.GetRevision(2);
rolledBackPdf.SaveAs("report-draft.pdf");
Imports IronPdf

Private pdf As PdfDocument = PdfDocument.FromFile("report.pdf")

Private versions As Integer = pdf.RevisionCount ' total revisions

Private rolledBackPdf As PdfDocument = pdf.GetRevision(2)
rolledBackPdf.SaveAs("report-draft.pdf")
$vbLabelText   $csharpLabel

O método GetRevision cria uma nova instância de documento PDF contendo apenas o conteúdo até o número de revisão especificado. Isso é útil em cenários onde:

Você precisa comparar diferentes versões de um documento.

  • Uma assinatura foi invalidada devido a alterações não autorizadas. Você deseja criar uma ramificação a partir de uma versão anterior para um fluxo de trabalho de aprovação diferente.
  • Você precisa demonstrar a conformidade mostrando o estado do documento em um momento específico.

Ao trabalhar com revisões, a reversão não afeta o arquivo PDF original – ela cria uma nova instância do documento. Essa abordagem mantém a integridade dos dados, ao mesmo tempo que oferece flexibilidade no gerenciamento de versões de documentos. Para técnicas mais avançadas de manipulação de PDFs, explore os recursos abrangentes de edição do IronPDF .

Melhores práticas para gerenciar revisões de PDFs

Ao implementar o histórico de revisões em seus aplicativos, considere estas boas práticas:

  1. Sempre ativar o rastreamento de alterações : Defina TrackChanges: ChangeTrackingModes.EnableChangeTracking ao abrir PDFs que exigem histórico de revisões.

  2. Documente sua estratégia de revisão : Mantenha uma documentação clara sobre quando e por que as revisões são salvas, especialmente em ambientes multiusuário.

  3. Implementar controles de acesso : combine o histórico de revisões com permissões e senhas de PDF para garantir que apenas usuários autorizados possam criar ou acessar revisões específicas.

  4. Exportações regulares : Exporte periodicamente revisões importantes para arquivos separados para arquivamento a longo prazo.

  5. Teste a compatibilidade de assinaturas : Teste como diferentes permissões de assinatura interagem com seu fluxo de trabalho de revisão para evitar invalidações inesperadas.

Seguindo essas práticas e aproveitando os recursos de gerenciamento de revisões do IronPDF, você pode criar fluxos de trabalho de documentos sofisticados que mantêm trilhas de auditoria completas, garantindo a integridade dos documentos durante todo o processo de colaboração. Para obter mais informações sobre como implementar esses recursos em seus aplicativos, consulte a documentação completa do IronPDF ou explore as opções de licenciamento adequadas às necessidades da sua empresa.

Perguntas frequentes

Como faço para salvar revisões de PDF em C#?

Você pode salvar revisões de PDFs em C# usando o método SaveAsRevision do IronPDF. Basta carregar seu documento PDF e chamar pdf.SaveAsRevision('revision1.pdf') para criar uma versão salva que rastreia todas as modificações feitas no documento.

Qual é a finalidade de rastrear o histórico de revisões de PDFs?

O recurso de histórico de revisões do IronPDF permite que os desenvolvedores acompanhem as alterações nos documentos ao longo do tempo, possibilitando fluxos de trabalho colaborativos nos quais é possível reverter para versões anteriores usando o método GetRevision. Isso é essencial para manter registros de auditoria em aplicativos corporativos.

Como faço para ativar o rastreamento de alterações para salvamentos incrementais?

Para habilitar o rastreamento de alterações no IronPDF, defina a opção TrackChanges como true e use o parâmetro ChangeTrackingModes.EnableChangeTracking. Isso preserva todas as modificações do documento como camadas separadas, permitindo a navegação por todo o histórico do documento.

Posso assinar um PDF e manter seu histórico de revisões?

Sim, o IronPDF permite assinar PDFs mantendo o histórico de revisões. Ao assinar um documento, a assinatura se aplica à versão atual. Você pode definir permissões específicas, como preenchimento de formulários, para evitar que a assinatura seja invalidada por edições futuras.

Como faço para recuperar versões anteriores em PDF?

O IronPDF fornece o método GetRevision para recuperar versões anteriores de um documento PDF. Você também pode usar a propriedade RevisionCount para determinar quantas revisões existem no histórico do documento.

O que acontece com as assinaturas quando salvo uma nova revisão?

Ao usar o método SaveAsRevision do IronPDF após assinar um documento, a assinatura permanece válida para aquela revisão específica. No entanto, quaisquer edições que excedam as permissões permitidas (como o preenchimento de formulários) invalidarão a assinatura, garantindo a integridade do documento.

O histórico de revisões é visível em todos os visualizadores de PDF?

Embora o IronPDF salve o histórico completo de revisões de forma semelhante aos commits do Git, nem todos os visualizadores de PDF exibem essas informações. Visualizadores básicos como o Chrome mostram apenas a versão atual, enquanto visualizadores avançados como o Adobe Acrobat podem exibir o histórico completo de revisões.

Como o salvamento incremental melhora o desempenho do PDF?

O recurso de salvamento incremental do IronPDF melhora o desempenho da exportação, salvando apenas as alterações em vez de reescrever o documento inteiro. Você pode otimizar o desempenho definindo `TrackChanges` como `false` quando o controle de revisões não for necessário, embora essa opção precise estar ativada para salvamentos incrementais.

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
Pronto para começar?
Nuget Downloads 18,318,263 | Versão: 2026.4 acaba de ser lançado
Still Scrolling Icon

Ainda está rolando a tela?

Quer provas rápidas? PM > Install-Package IronPdf
executar um exemplo Veja seu HTML se transformar em um PDF.