Como definir e editar metadados de PDF em C# com IronPDF
O IronPDF permite que os desenvolvedores definam e editem programaticamente metadados de PDF em aplicativos C#, incluindo propriedades padrão como título, autor e palavras-chave, bem como campos de metadados personalizados para melhor organização e capacidade de pesquisa do documento. Seja para criar aplicativos empresariais que exigem rastreamento de documentos, implementar recursos de conformidade ou organizar sua biblioteca de PDFs, o IronPDF oferece recursos abrangentes de manipulação de metadados. Essa funcionalidade se integra perfeitamente com a conversão de HTML para PDF do IronPDF e com outros recursos de processamento de documentos.
Início Rápido: Modifique Metadados de PDF Instantaneamente
Gerencie metadados de PDF usando o IronPDF com apenas algumas linhas de código. Carregue seu PDF, atualize os metadados, como título, autor ou palavras-chave, e salve as alterações. Este guia simplifica a configuração e edição de metadados, garantindo que seus documentos estejam bem organizados e possam ser pesquisados. Aprimore suas funcionalidades em PDF seguindo esta abordagem simples.
-
Instale IronPDF com o Gerenciador de Pacotes NuGet
-
Copie e execute este trecho de código.
IronPdf.PdfDocument.FromFile("example.pdf") .MetaData = new IronPdf.PdfMetaData { Title="MyDoc", Author="Me", Subject="Demo", Keywords="ironpdf,metadata", Creator="MyApp", Producer="IronPDF", CreationDate=DateTime.Today, ModifiedDate=DateTime.Now } .SaveAs("updated_example.pdf"); -
Implante para testar em seu ambiente de produção.
Comece a usar IronPDF em seu projeto hoje com uma avaliação gratuita
Fluxo de trabalho mínimo (5 etapas)
- Baixe a biblioteca IronPDF C# para edição de metadados de PDF.
- Carregar um PDF existente ou gerar um novo.
- Acesse a propriedade
MetaDatapara definir e editar os metadados do PDF - Utilize o dicionário de metadados para um processamento eficaz de metadados.
- Adicione, edite ou remova propriedades de metadados personalizadas de PDF.
Como faço para configurar e editar metadados de PDF?
Ao usar o IronPDF, definir e editar campos de metadados genéricos em PDFs é muito simples. Acesse a propriedade MetaData para modificar os campos de metadados disponíveis. Essa funcionalidade é particularmente útil ao trabalhar com formulários em PDF , assinaturas digitais ou ao implementar sistemas de gerenciamento de documentos.
:path=/static-assets/pdf/content-code-examples/how-to/metadata-set-edit.cs
using IronPdf;
using System;
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Metadata</h1>");
// Access the MetaData class and set the pre-defined metadata properties.
pdf.MetaData.Author = "Iron Software";
pdf.MetaData.CreationDate = DateTime.Today;
pdf.MetaData.Creator = "IronPDF";
pdf.MetaData.Keywords = "ironsoftware,ironpdf,pdf";
pdf.MetaData.ModifiedDate = DateTime.Now;
pdf.MetaData.Producer = "IronPDF";
pdf.MetaData.Subject = "Metadata Tutorial";
pdf.MetaData.Title = "IronPDF Metadata Tutorial";
pdf.SaveAs("pdf-with-metadata.pdf");
Imports IronPdf
Imports System
Dim renderer As New ChromePdfRenderer()
Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Metadata</h1>")
' Access the MetaData class and set the pre-defined metadata properties.
pdf.MetaData.Author = "Iron Software"
pdf.MetaData.CreationDate = DateTime.Today
pdf.MetaData.Creator = "IronPDF"
pdf.MetaData.Keywords = "ironsoftware,ironpdf,pdf"
pdf.MetaData.ModifiedDate = DateTime.Now
pdf.MetaData.Producer = "IronPDF"
pdf.MetaData.Subject = "Metadata Tutorial"
pdf.MetaData.Title = "IronPDF Metadata Tutorial"
pdf.SaveAs("pdf-with-metadata.pdf")
Como posso visualizar os metadados no PDF gerado?
Para visualizar os metadados do documento, clique nos três pontos verticais e acesse Propriedades do documento. Esses metadados são cruciais para a organização de documentos, especialmente ao implementar documentos compatíveis com PDF/A para arquivamento a longo prazo.
Como faço para configurar e recuperar o dicionário de metadados?
O método GetMetaDataDictionary recupera o dicionário de metadados existente e acessa informações de metadados armazenadas dentro do documento. O método SetMetaDataDictionary oferece uma maneira eficaz de reescrever o dicionário de metadados. Se uma chave não estiver presente nos campos de metadados genéricos, ela se torna uma propriedade de metadados personalizada. Essa abordagem é particularmente útil ao trabalhar com a fusão de vários PDFs e a consolidação de metadados de diferentes fontes.
:path=/static-assets/pdf/content-code-examples/how-to/metadata-set-and-get-metadata-dictionary.cs
using IronPdf;
using System.Collections.Generic;
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Metadata</h1>");
Dictionary<string, string> newMetadata = new Dictionary<string, string>();
newMetadata.Add("Title", "How to article");
newMetadata.Add("Author", "IronPDF");
// Set metadata dictionary
pdf.MetaData.SetMetaDataDictionary(newMetadata);
// Retreive metadata dictionary
Dictionary<string, string> metadataProperties = pdf.MetaData.GetMetaDataDictionary();
Imports IronPdf
Imports System.Collections.Generic
Dim renderer As New ChromePdfRenderer()
Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Metadata</h1>")
Dim newMetadata As New Dictionary(Of String, String)()
newMetadata.Add("Title", "How to article")
newMetadata.Add("Author", "IronPDF")
' Set metadata dictionary
pdf.MetaData.SetMetaDataDictionary(newMetadata)
' Retrieve metadata dictionary
Dim metadataProperties As Dictionary(Of String, String) = pdf.MetaData.GetMetaDataDictionary()
O que acontece quando eu uso o dicionário de metadados?
Para visualizar os metadados do documento, clique nos três pontos verticais e acesse Propriedades do documento. A abordagem de dicionário de metadados é especialmente útil na implementação de fluxos de trabalho de processamento em lote ou na padronização de metadados em vários documentos. Para cenários avançados de gerenciamento de documentos, considere combinar isso com técnicas de compressão de PDF para otimizar o armazenamento de arquivos.
Trabalhando com metadados em diferentes contextos
No desenvolvimento de aplicações empresariais, os metadados desempenham um papel crucial na classificação e recuperação de documentos. Eis um exemplo de implementação de um sistema abrangente de gerenciamento de metadados:
using IronPdf;
using System;
using System.Collections.Generic;
public class PDFMetadataManager
{
public static void ProcessBatchMetadata(List<string> pdfPaths)
{
foreach (string path in pdfPaths)
{
var pdf = PdfDocument.FromFile(path);
// Standardize metadata across all documents
pdf.MetaData.Producer = "Company Document System v2.0";
pdf.MetaData.Creator = "IronPDF";
// Add processing timestamp
pdf.MetaData.ModifiedDate = DateTime.Now;
// Add document classification
var metadata = pdf.MetaData.GetMetaDataDictionary();
metadata["DocumentType"] = "Internal Report";
metadata["Department"] = "Finance";
metadata["SecurityLevel"] = "Confidential";
pdf.MetaData.SetMetaDataDictionary(metadata);
pdf.SaveAs(path.Replace(".pdf", "_processed.pdf"));
}
}
}
using IronPdf;
using System;
using System.Collections.Generic;
public class PDFMetadataManager
{
public static void ProcessBatchMetadata(List<string> pdfPaths)
{
foreach (string path in pdfPaths)
{
var pdf = PdfDocument.FromFile(path);
// Standardize metadata across all documents
pdf.MetaData.Producer = "Company Document System v2.0";
pdf.MetaData.Creator = "IronPDF";
// Add processing timestamp
pdf.MetaData.ModifiedDate = DateTime.Now;
// Add document classification
var metadata = pdf.MetaData.GetMetaDataDictionary();
metadata["DocumentType"] = "Internal Report";
metadata["Department"] = "Finance";
metadata["SecurityLevel"] = "Confidential";
pdf.MetaData.SetMetaDataDictionary(metadata);
pdf.SaveAs(path.Replace(".pdf", "_processed.pdf"));
}
}
}
Imports IronPdf
Imports System
Imports System.Collections.Generic
Public Class PDFMetadataManager
Public Shared Sub ProcessBatchMetadata(pdfPaths As List(Of String))
For Each path As String In pdfPaths
Dim pdf = PdfDocument.FromFile(path)
' Standardize metadata across all documents
pdf.MetaData.Producer = "Company Document System v2.0"
pdf.MetaData.Creator = "IronPDF"
' Add processing timestamp
pdf.MetaData.ModifiedDate = DateTime.Now
' Add document classification
Dim metadata = pdf.MetaData.GetMetaDataDictionary()
metadata("DocumentType") = "Internal Report"
metadata("Department") = "Finance"
metadata("SecurityLevel") = "Confidential"
pdf.MetaData.SetMetaDataDictionary(metadata)
pdf.SaveAs(path.Replace(".pdf", "_processed.pdf"))
Next
End Sub
End Class
O IronSuite desempenha um papel crucial nas nossas operações. Estas são ferramentas que aumentam a eficiência no negócio, incluindo a criação de plantas baixas e melhoria na gestão de inventário.
Como faço para adicionar, editar e remover metadados personalizados?
Além dos metadados padrão de um documento PDF, você pode incluir propriedades de metadados personalizadas. Essas propriedades personalizadas geralmente não são visíveis em softwares visualizadores de PDF, pois normalmente exibem apenas metadados genéricos e podem não recuperar todas as propriedades de metadados existentes. Os metadados personalizados são particularmente valiosos ao implementar recursos de segurança em PDFs ou ao criar fluxos de trabalho de documentos especializados.
Como faço para adicionar e editar propriedades de metadados personalizadas?
Para adicionar metadados personalizados, acesse a propriedade CustomProperties e invoque o método Add. A edição de metadados personalizados requer passar o valor chave para a propriedade CustomProperties e reatribuir seu valor. Essa funcionalidade se integra bem a cenários de edição de formulários PDF , onde você pode precisar rastrear os metadados de envio do formulário.
:path=/static-assets/pdf/content-code-examples/how-to/metadata-custom-properties.cs
using IronPdf;
using IronPdf.MetaData;
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Metadata</h1>");
PdfCustomMetadataProperties customProperties = pdf.MetaData.CustomProperties;
// Add custom property
customProperties.Add("foo", "bar"); // Key: foo, Value: bar
// Edit custom property
customProperties["foo"] = "baz";
Imports IronPdf
Imports IronPdf.MetaData
Dim renderer As New ChromePdfRenderer()
Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Metadata</h1>")
Dim customProperties As PdfCustomMetadataProperties = pdf.MetaData.CustomProperties
' Add custom property
customProperties.Add("foo", "bar") ' Key: foo, Value: bar
' Edit custom property
customProperties("foo") = "baz"
Cenários avançados de metadados personalizados
Os metadados personalizados tornam-se particularmente poderosos na construção de sistemas de gestão documental. Aqui está um exemplo completo que demonstra o uso no mundo real:
using IronPdf;
using System;
using System.Linq;
public class DocumentTrackingSystem
{
public static void AddTrackingMetadata(PdfDocument pdf, string userId, string projectId)
{
var customProps = pdf.MetaData.CustomProperties;
// Add tracking information
customProps.Add("ProcessedBy", userId);
customProps.Add("ProcessedDate", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
customProps.Add("ProjectID", projectId);
customProps.Add("DocumentVersion", "1.0");
customProps.Add("ReviewStatus", "Pending");
// Add workflow metadata
customProps.Add("WorkflowStep", "Initial Review");
customProps.Add("NextReviewer", "John.Doe@company.com");
customProps.Add("DueDate", DateTime.Now.AddDays(7).ToString("yyyy-MM-dd"));
// Add compliance metadata
customProps.Add("ComplianceChecked", "false");
customProps.Add("RetentionPeriod", "7 years");
customProps.Add("Classification", "Internal Use Only");
}
public static void UpdateReviewStatus(PdfDocument pdf, string status, string reviewer)
{
var customProps = pdf.MetaData.CustomProperties;
// Update existing properties
customProps["ReviewStatus"] = status;
customProps["LastReviewedBy"] = reviewer;
customProps["LastReviewDate"] = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
// Increment version if approved
if (status == "Approved" && customProps.ContainsKey("DocumentVersion"))
{
var currentVersion = customProps["DocumentVersion"];
var versionParts = currentVersion.Split('.');
var minorVersion = int.Parse(versionParts[1]) + 1;
customProps["DocumentVersion"] = $"{versionParts[0]}.{minorVersion}";
}
}
}
using IronPdf;
using System;
using System.Linq;
public class DocumentTrackingSystem
{
public static void AddTrackingMetadata(PdfDocument pdf, string userId, string projectId)
{
var customProps = pdf.MetaData.CustomProperties;
// Add tracking information
customProps.Add("ProcessedBy", userId);
customProps.Add("ProcessedDate", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
customProps.Add("ProjectID", projectId);
customProps.Add("DocumentVersion", "1.0");
customProps.Add("ReviewStatus", "Pending");
// Add workflow metadata
customProps.Add("WorkflowStep", "Initial Review");
customProps.Add("NextReviewer", "John.Doe@company.com");
customProps.Add("DueDate", DateTime.Now.AddDays(7).ToString("yyyy-MM-dd"));
// Add compliance metadata
customProps.Add("ComplianceChecked", "false");
customProps.Add("RetentionPeriod", "7 years");
customProps.Add("Classification", "Internal Use Only");
}
public static void UpdateReviewStatus(PdfDocument pdf, string status, string reviewer)
{
var customProps = pdf.MetaData.CustomProperties;
// Update existing properties
customProps["ReviewStatus"] = status;
customProps["LastReviewedBy"] = reviewer;
customProps["LastReviewDate"] = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
// Increment version if approved
if (status == "Approved" && customProps.ContainsKey("DocumentVersion"))
{
var currentVersion = customProps["DocumentVersion"];
var versionParts = currentVersion.Split('.');
var minorVersion = int.Parse(versionParts[1]) + 1;
customProps["DocumentVersion"] = $"{versionParts[0]}.{minorVersion}";
}
}
}
Imports IronPdf
Imports System
Imports System.Linq
Public Class DocumentTrackingSystem
Public Shared Sub AddTrackingMetadata(pdf As PdfDocument, userId As String, projectId As String)
Dim customProps = pdf.MetaData.CustomProperties
' Add tracking information
customProps.Add("ProcessedBy", userId)
customProps.Add("ProcessedDate", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"))
customProps.Add("ProjectID", projectId)
customProps.Add("DocumentVersion", "1.0")
customProps.Add("ReviewStatus", "Pending")
' Add workflow metadata
customProps.Add("WorkflowStep", "Initial Review")
customProps.Add("NextReviewer", "John.Doe@company.com")
customProps.Add("DueDate", DateTime.Now.AddDays(7).ToString("yyyy-MM-dd"))
' Add compliance metadata
customProps.Add("ComplianceChecked", "false")
customProps.Add("RetentionPeriod", "7 years")
customProps.Add("Classification", "Internal Use Only")
End Sub
Public Shared Sub UpdateReviewStatus(pdf As PdfDocument, status As String, reviewer As String)
Dim customProps = pdf.MetaData.CustomProperties
' Update existing properties
customProps("ReviewStatus") = status
customProps("LastReviewedBy") = reviewer
customProps("LastReviewDate") = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")
' Increment version if approved
If status = "Approved" AndAlso customProps.ContainsKey("DocumentVersion") Then
Dim currentVersion = customProps("DocumentVersion")
Dim versionParts = currentVersion.Split("."c)
Dim minorVersion = Integer.Parse(versionParts(1)) + 1
customProps("DocumentVersion") = $"{versionParts(0)}.{minorVersion}"
End If
End Sub
End Class
Como faço para remover propriedades de metadados personalizadas?
Remova metadados personalizados de um documento PDF de duas maneiras. Use o método RemoveMetaDataKey, acessível pela propriedade Metadata, ou use o método Remove da propriedade CustomProperties. Isso é particularmente útil ao higienizar PDFs para distribuição pública ou ao preparar documentos para arquivamento.
:path=/static-assets/pdf/content-code-examples/how-to/metadata-remove-custom-properties.cs
using IronPdf;
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Metadata</h1>");
// Add custom property to be deleted
pdf.MetaData.CustomProperties.Add("willBeDeleted", "value");
// Remove custom property _ two ways
pdf.MetaData.RemoveMetaDataKey("willBeDeleted");
pdf.MetaData.CustomProperties.Remove("willBeDeleted");
Imports IronPdf
Dim renderer As New ChromePdfRenderer()
Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Metadata</h1>")
' Add custom property to be deleted
pdf.MetaData.CustomProperties.Add("willBeDeleted", "value")
' Remove custom property _ two ways
pdf.MetaData.RemoveMetaDataKey("willBeDeleted")
pdf.MetaData.CustomProperties.Remove("willBeDeleted")
Introdução
Os metadados de PDF servem como a espinha dorsal dos sistemas de gerenciamento de documentos, permitindo organização eficiente, capacidade de busca e rastreamento de conformidade. Os recursos de metadados do IronPDF vão além da simples configuração de propriedades — eles fornecem uma estrutura abrangente para a criação de fluxos de trabalho de documentos sofisticados. Seja para implementar documentos compatíveis com PDF/UA para acessibilidade ou para criar sistemas de rastreamento personalizados, o gerenciamento de metadados é essencial.
Melhores práticas para gerenciamento de metadados
- Consistência: Estabeleça convenções de nomenclatura para chaves de metadados personalizadas
- Documentação: Faça uma lista de campos de metadados personalizados usados no seu sistema
- Validação: Implemente regras de validação antes de definir valores de metadados
- Segurança: Evite armazenar informações sensíveis em metadados, a menos que o PDF esteja criptografado
- Conformidade : Garanta que os metadados atendam aos requisitos regulamentares do seu setor.
Ao aproveitar os recursos de metadados do IronPDF, juntamente com funcionalidades como assinaturas digitais e criptografia de PDF , você pode criar soluções robustas de gerenciamento de documentos que atendam aos requisitos corporativos.
Pronto para ver o que mais você pode fazer? Confira nossa página de tutoriais aqui: Assinar e proteger PDFs
Perguntas frequentes
Como faço para definir propriedades de metadados de um PDF, como título e autor, em C#?
Com o IronPDF, você pode facilmente definir metadados de PDF acessando a propriedade MetaData do seu documento PDF. Basta atribuir um novo objeto PdfMetaData com propriedades como Título, Autor, Assunto, Palavras-chave, Criador e datas. O IronPDF facilita a atualização programática desses campos de metadados padrão.
Posso adicionar campos de metadados personalizados aos PDFs além das propriedades padrão?
Sim, o IronPDF suporta campos de metadados personalizados por meio do dicionário de metadados. Usando o método SetMetaDataDictionary, você pode adicionar quaisquer pares de chave-valor além dos campos padrão. Se uma chave não corresponder aos campos de metadados genéricos, o IronPDF a tratará automaticamente como metadado personalizado.
Como posso recuperar os metadados existentes de um documento PDF?
O IronPDF fornece o método GetMetaDataDictionary para recuperar todos os metadados existentes em um documento PDF. Esse método retorna um dicionário contendo campos de metadados padrão e personalizados, permitindo acessar e processar informações de metadados armazenadas no documento.
Quais campos de metadados padrão estão disponíveis para edição?
O IronPDF suporta todos os campos de metadados padrão de PDF, incluindo Título, Autor, Assunto, Palavras-chave, Criador, Produtor, Data de Criação e Data de Modificação. Esses campos podem ser definidos por meio do objeto PdfMetaData e são essenciais para a organização e a capacidade de busca do documento.
Como faço para visualizar os metadados depois de configurá-los no PDF?
Após usar o IronPDF para definir os metadados, você pode visualizá-los em qualquer leitor de PDF acessando as propriedades do documento. Na maioria dos visualizadores de PDF, clique nos três pontos verticais ou acesse o menu Arquivo e selecione Propriedades do Documento para ver todos os campos de metadados, incluindo aqueles definidos programaticamente.
É possível combinar a manipulação de metadados com outras operações em PDF?
Com certeza! O IronPDF permite combinar a edição de metadados com outros recursos, como conversão de HTML para PDF, criação de formulários em PDF e assinaturas digitais. Isso o torna ideal para a criação de sistemas abrangentes de gerenciamento de documentos ou recursos de conformidade.

