Jak ustawić i edytować metadane plików PDF w języku C# za pomocą IronPDF
IronPDF umożliwia programistom programowe ustawianie i edytowanie metadanych PDF w aplikacjach C#, w tym standardowych właściwości, takich jak tytuł, autor i słowa kluczowe, a także niestandardowych pól metadanych w celu lepszej organizacji dokumentów i ułatwienia wyszukiwania. Niezależnie od tego, czy tworzysz aplikacje biznesowe wymagające śledzenia dokumentów, wdrażasz funkcje zapewniające zgodność z przepisami, czy organizujesz bibliotekę plików PDF, IronPDF zapewnia kompleksowe możliwości manipulacji metadanymi. Ta funkcja płynnie integruje się z konwersją HTML na PDF oraz innymi funkcjami przetwarzania dokumentów oferowanymi przez IronPDF.
Szybki start: Natychmiastowa modyfikacja metadanych plików PDF
Zarządzaj metadanymi plików PDF za pomocą IronPDF za pomocą zaledwie kilku wierszy kodu. Załaduj plik PDF, zaktualizuj metadane, takie jak tytuł, autor lub słowa kluczowe, i zapisz zmiany. Ten przewodnik ułatwia konfigurowanie i edytowanie metadanych, zapewniając, że dokumenty są dobrze zorganizowane i łatwe do wyszukiwania. Rozszerz możliwości swojego pliku PDF, stosując to proste podejście.
-
Install IronPDF with NuGet Package Manager
-
Skopiuj i uruchom ten fragment kodu.
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"); -
Wdrożenie do testowania w środowisku produkcyjnym
Rozpocznij używanie IronPDF w swoim projekcie już dziś z darmową wersją próbną
Minimalny proces (5 kroków)
- Pobierz bibliotekę IronPDF C# do edycji metadanych plików PDF
- Załaduj istniejący plik PDF lub wygeneruj nowy
- Dostęp do właściwości
MetaDataumożliwia ustawienie i edycję metadanych PDF - Wykorzystaj słownik metadanych do efektywnego przetwarzania metadanych
- Dodawanie, edycja lub usuwanie niestandardowych właściwości metadanych plików PDF
Jak ustawić i edytować metadane pliku PDF?
Korzystając z IronPDF, ustawianie i edycja ogólnych pól metadanych w plikach PDF jest bardzo prosta. Uzyskaj dostęp do właściwości MetaData, aby modyfikować dostępne pola metadanych. Ta funkcjonalność jest szczególnie użyteczna przy pracy z formularzami PDF, podpisami cyfrowymi lub wdrażaniu systemów zarządzania dokumentami.
: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")
Jak mogę wyświetlić metadane w wyjściowym pliku PDF?
Aby wyświetlić metadane dokumentu, kliknij na trzy pionowe kropki i przejdź do właściwości dokumentu. Te metadane są kluczowe dla organizacji dokumentów, zwłaszcza przy wdrażaniu dokumentów zgodnych z PDF/A do długoterminowego archiwizowania.
Jak ustawić i pobrać słownik metadanych?
Metoda GetMetaDataDictionary pobiera istniejący słownik metadanych i uzyskuje dostęp do informacji o metadanych zapisanych w dokumencie. Metoda SetMetaDataDictionary zapewnia skuteczny sposób na przepisanie słownika metadanych. Jeśli klucz nie jest obecny w ogólnych polach metadanych, staje się własnością niestandardową metadanych. To podejście jest szczególnie użyteczne przy pracy z łączeniem wielu plików PDF i konsolidacją metadanych z różnych źródeł.
: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()
Co się dzieje, gdy używam słownika metadanych?
Aby wyświetlić metadane dokumentu, kliknij na trzy pionowe kropki i przejdź do właściwości dokumentu. Podejście ze słownikiem metadanych jest szczególnie pomocne przy wdrażaniu przebiegów pracy z przetwarzaniem wsadowym lub standaryzacji metadanych w wielu dokumentach. W zaawansowanych scenariuszach zarządzania dokumentami, warto rozważyć połączenie tego z technikami kompresji PDF w celu optymalizacji przechowywania plików.
Praca z metadanymi w różnych kontekstach
Podczas opracowywania aplikacji korporacyjnych, metadane odgrywają kluczową rolę w klasyfikacji i wyszukiwaniu dokumentów. Oto przykład wdrażania kompleksowego systemu zarządzania metadanymi:
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
IronSuite odgrywa kluczową rolę w naszej działalności. Są to narzędzia zwiększające wydajność w całej firmie, w tym tworzenie planów pięter i poprawa zarządzania zapasami.
Jak dodawać, edytować i usuwać niestandardowe metadane?
Oprócz standardowych metadanych dokumentu PDF, można uwzględnić niestandardowe właściwości metadanych. Te niestandardowe właściwości często nie są widoczne w oprogramowaniu do przeglądania PDF, ponieważ zazwyczaj wyświetlają tylko ogólne metadane i mogą nie pobierać wszystkich istniejących właściwości metadanych. Niestandardowe metadane są szczególnie wartościowe przy implementowaniu funkcji bezpieczeństwa PDF lub tworzeniu specjalizowanych przepływów pracy z dokumentami.
Jak dodawać i edytować właściwości niestandardowych metadanych?
Aby dodać niestandardowe metadane, uzyskaj dostęp do właściwości CustomProperties i wywołaj metodę Add. Edycja niestandardowych metadanych wymaga przekazania wartości klucza do właściwości CustomProperties i przypisania jego wartości. Ta funkcjonalność dobrze integruje się ze scenariuszami edycji formularzy PDF, gdzie może być konieczne śledzenie metadanych dotyczących wysyłki formularzy.
: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"
Zaawansowane scenariusze niestandardowych metadanych
Niestandardowe metadane stają się szczególnie potężne podczas budowy systemów zarządzania dokumentami. Oto wszechstronny przykład demonstrujący zastosowanie w rzeczywistości:
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
Jak usunąć właściwości niestandardowych metadanych?
Usuń niestandardowe metadane z dokumentu PDF na dwa sposoby. Użyj metody RemoveMetaDataKey dostępnej za pośrednictwem właściwości Metadata, lub użyj metody Remove z właściwości CustomProperties. Jest to szczególnie przydatne przy sanitowaniu plików PDF do publicznego udostępniania lub przygotowywaniu dokumentów do archiwizacji.
: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")
Wprowadzenie
Metadane PDF służą jako podstawa systemów zarządzania dokumentami, umożliwiając efektywną organizację, wyszukiwanie i śledzenie zgodności. Możliwości metadanych IronPDF wykraczają poza proste ustawianie właściwości — oferują wszechstronne ramy do budowy zaawansowanych przepływów pracy z dokumentami. Niezależnie od wdrażania dokumentów zgodnych z PDF/UA dla dostępności lub tworzenia niestandardowych systemów śledzenia, zarządzanie metadanymi jest niezbędne.
Najlepsze praktyki zarządzania metadanymi
- Konsekwencja: Ustanów konwencje nazewnicze dla niestandardowych kluczy metadanych
- Dokumentacja: Utrzymuj rejestr niestandardowych pól metadanych używanych w twoim systemie
- Walidacja: Zaimplementuj zasady walidacji przed ustawieniem wartości metadanych
- Bezpieczeństwo: Unikaj przechowywania poufnych informacji w metadanych, chyba że PDF jest zaszyfrowany
- Zgodność: Upewnij się, że metadane spełniają wymagania regulacyjne dla twojej branży
Wykorzystując możliwości metadanych IronPDF wraz z funkcjami takimi jak podpisy cyfrowe i szyfrowanie PDF, możesz zbudować solidne rozwiązania zarządzania dokumentami spełniające wymagania przedsiębiorstw.
Gotowy, aby sprawdzić, co jeszcze możesz zrobić? Zapoznaj się z naszą stroną z samouczkami tutaj: Podpisywanie i zabezpieczanie plików PDF
Często Zadawane Pytania
Jak ustawić właściwości metadanych PDF, takie jak tytuł i autor w C#?
Za pomocą IronPDF możesz łatwo ustawić metadane PDF, uzyskując dostęp do właściwości MetaData dokumentu PDF. Po prostu przypisz nowy obiekt PdfMetaData z właściwościami takimi jak Tytuł, Autor, Temat, Słowa kluczowe, Twórca i daty. IronPDF upraszcza aktualizację tych standardowych pól metadanych programowo.
Czy mogę dodać niestandardowe pola metadanych do plików PDF poza standardowymi właściwościami?
Tak, IronPDF obsługuje niestandardowe pola metadanych za pośrednictwem słownika metadanych. Za pomocą metody SetMetaDataDictionary możesz dodać dowolne pary klucz-wartość poza standardowymi polami. Jeśli klucz nie pasuje do ogólnych pól metadanych, IronPDF automatycznie traktuje go jako niestandardowe metadane.
Jak mogę pobrać istniejące metadane z dokumentu PDF?
IronPDF udostępnia metodę GetMetaDataDictionary do pobierania wszystkich istniejących metadanych z dokumentu PDF. Ta metoda zwraca słownik zawierający zarówno standardowe, jak i niestandardowe pola metadanych, pozwalając uzyskiwać dostęp i przetwarzać informacje metadanych zapisane w dokumencie.
Jakie standardowe pola metadanych są dostępne do edycji?
IronPDF obsługuje wszystkie standardowe pola metadanych PDF, w tym Tytuł, Autor, Temat, Słowa kluczowe, Twórca, Producent, Data utworzenia i Data modyfikacji. Te pola można ustawić za pomocą obiektu PdfMetaData i są one niezbędne do organizacji i przeszukiwalności dokumentów.
Jak mogę zobaczyć metadane po ich ustawieniu w PDF?
Po użyciu IronPDF do ustawienia metadanych, możesz je zobaczyć w dowolnym czytniku PDF, uzyskując dostęp do właściwości dokumentu. W większości przeglądarek PDF kliknij trzy pionowe kropki lub przejdź do menu Plik i wybierz Właściwości dokumentu, aby zobaczyć wszystkie pola metadanych, w tym te ustawione programowo.
Czy manipulacja metadanymi może być łączona z innymi operacjami na PDF?
Zdecydowanie! IronPDF pozwala łączyć edycję metadanych z innymi funkcjami, takimi jak konwersja HTML na PDF, tworzenie formularzy PDF i cyfrowe podpisy. To idealne rozwiązanie do budowy kompleksowych systemów zarządzania dokumentami lub funkcji zgodności.

