C#에서 PDF 메타데이터를 설정하고 편집하는 방법

IronPDF를 사용하여 C#에서 PDF 메타데이터를 설정하고 편집하는 방법

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

IronPDF를 사용하면 개발자는 C# 애플리케이션에서 PDF 메타데이터를 프로그래밍 방식으로 설정하고 편집할 수 있습니다. 여기에는 제목, 작성자, 키워드와 같은 표준 속성은 물론 문서 구성 및 검색 기능을 향상시키는 사용자 지정 메타데이터 필드도 포함됩니다. 문서 추적이 필요한 비즈니스 애플리케이션을 구축하든, 규정 준수 기능을 구현하든, PDF 라이브러리를 정리하든, IronPDF는 포괄적인 메타데이터 조작 기능을 제공합니다. This functionality integrates seamlessly with IronPDF's HTML to PDF conversion and other document processing features.

빠른 시작: PDF 메타데이터를 즉시 수정하세요

IronPDF를 사용하면 단 몇 줄의 코드로 PDF 메타데이터를 관리할 수 있습니다. PDF 파일을 불러오고, 제목, 저자, 키워드 등의 메타데이터를 업데이트한 후 변경 사항을 저장하세요. 이 가이드는 메타데이터 설정 및 편집을 간소화하여 문서가 잘 정리되고 검색 가능하도록 도와줍니다. 다음의 간단한 방법을 따르면 PDF 활용 능력을 향상시킬 수 있습니다.

Nuget Icon지금 바로 NuGet을 사용하여 PDF 만들기를 시작하세요.

  1. NuGet 패키지 관리자를 사용하여 IronPDF를 설치하세요.

    PM > Install-Package IronPdf

  2. 다음 코드 조각을 복사하여 실행하세요.

    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");
  3. 실제 운영 환경에서 테스트할 수 있도록 배포하세요.

    지금 바로 무료 체험판을 통해 프로젝트에서 IronPDF를 사용해 보세요.
    arrow pointer


PDF 메타데이터는 어떻게 설정하고 편집하나요?

IronPDF를 사용하면 PDF의 일반 메타데이터 필드를 설정하고 편집하는 것이 간단합니다. 사용 가능한 메타데이터 필드를 수정하려면 MetaData 속성에 접근하십시오. This functionality is particularly useful when working with PDF forms, digital signatures, or implementing document management systems.

: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");
$vbLabelText   $csharpLabel

출력 PDF에서 메타데이터를 어떻게 볼 수 있나요?

문서 메타데이터를 보려면 세로로 된 점 세 개를 클릭하고 문서 속성에 액세스하세요. This metadata is crucial for document organization, especially when implementing PDF/A compliant documents for long-term archival.

메타데이터 사전을 설정하고 불러오는 방법은 무엇인가요?

GetMetaDataDictionary 메서드는 기존 메타데이터 사전을 검색하고 문서 내에 저장된 메타데이터 정보에 액세스합니다. SetMetaDataDictionary 메서드는 메타데이터 사전을 재작성하는 효과적인 방법을 제공합니다. 키가 일반 메타데이터 필드에 없는 경우 해당 키는 사용자 지정 메타데이터 속성이 됩니다. This approach is particularly useful when working with merging multiple PDFs and consolidating metadata from different sources.

: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();
$vbLabelText   $csharpLabel

메타데이터 사전을 사용하면 어떤 일이 발생하나요?

문서 메타데이터를 보려면 세로로 된 점 세 개를 클릭하고 문서 속성에 액세스하세요. 메타데이터 사전 접근 방식은 일괄 처리 워크플로를 구현하거나 여러 문서에 걸쳐 메타데이터를 표준화할 때 특히 유용합니다. For advanced document management scenarios, consider combining this with PDF compression techniques to optimize file storage.

다양한 맥락에서 메타데이터 활용하기

기업용 애플리케이션 개발 시 메타데이터는 문서 분류 및 검색에 매우 중요한 역할을 합니다. 다음은 포괄적인 메타데이터 관리 시스템을 구현한 예입니다.

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"));
        }
    }
}
$vbLabelText   $csharpLabel

사용자 지정 메타데이터를 추가, 편집 및 삭제하는 방법은 무엇입니까?

PDF 문서의 표준 메타데이터 외에도 사용자 지정 메타데이터 속성을 포함할 수 있습니다. 이러한 사용자 지정 속성은 일반적으로 PDF 뷰어 소프트웨어에서 표시되지 않는 경우가 많습니다. PDF 뷰어 소프트웨어는 일반적인 메타데이터만 표시하고 기존의 모든 메타데이터 속성을 가져오지 못할 수 있기 때문입니다. Custom metadata is particularly valuable when implementing PDF security features or creating specialized document workflows.

사용자 지정 메타데이터 속성을 추가하고 편집하는 방법은 무엇입니까?

사용자 지정 메타데이터를 추가하려면 CustomProperties 속성에 접근하여 Add 메서드를 호출하십시오. 사용자 지정 메타데이터를 편집하려면 키 값을 CustomProperties 속성에 전달하고 해당 값을 다시 할당해야 합니다. This functionality integrates well with PDF form editing scenarios where you might need to track form submission metadata.

: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";
$vbLabelText   $csharpLabel

고급 사용자 정의 메타데이터 시나리오

사용자 지정 메타데이터는 문서 관리 시스템을 구축할 때 특히 강력한 도구가 됩니다. 다음은 실제 사용 사례를 보여주는 포괄적인 예시입니다.

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}";
        }
    }
}
$vbLabelText   $csharpLabel

사용자 지정 메타데이터 속성을 제거하려면 어떻게 해야 하나요?

PDF 문서에서 사용자 지정 메타데이터를 제거하는 두 가지 방법이 있습니다. Metadata 속성을 통해 접근 가능한 RemoveMetaDataKey 메서드를 사용하거나 CustomProperties 속성의 Remove 메서드를 사용하십시오. This is particularly useful when sanitizing PDFs for public distribution or preparing documents for archival.

: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");
$vbLabelText   $csharpLabel

소개

PDF 메타데이터는 문서 관리 시스템의 핵심 요소로서 효율적인 구성, 검색 기능 및 규정 준수 추적을 가능하게 합니다. IronPDF의 메타데이터 기능은 단순한 속성 설정을 넘어, 정교한 문서 워크플로우를 구축하기 위한 포괄적인 프레임워크를 제공합니다. Whether implementing PDF/UA compliant documents for accessibility or creating custom tracking systems, metadata management is essential.

메타데이터 관리 모범 사례

  1. 일관성 : 사용자 지정 메타데이터 키에 대한 명명 규칙을 수립합니다.
  2. 문서화 : 시스템에서 사용하는 사용자 지정 메타데이터 필드 레지스트리를 유지 관리합니다.
  3. 유효성 검사 : 메타데이터 값을 설정하기 전에 유효성 검사 규칙을 구현하십시오.
  4. 보안 : PDF가 암호화되지 않은 경우 메타데이터에 민감한 정보를 저장하지 마십시오.
  5. 규정 준수 : 메타데이터가 해당 산업의 규제 요건을 충족하는지 확인하십시오.

By leveraging IronPDF's metadata capabilities alongside features like digital signatures and PDF encryption, you can build robust document management solutions that meet enterprise requirements.

당신이 할 수 있는 다른 일들을 알아볼 준비가 되셨나요? PDF 서명 및 보안 설정 방법에 대한 튜토리얼 페이지를 여기에서 확인하세요.

자주 묻는 질문

C#에서 PDF 메타데이터 속성(제목, 저자 등)을 설정하는 방법은 무엇인가요?

IronPDF를 사용하면 PDF 문서의 MetaData 속성에 접근하여 PDF 메타데이터를 간편하게 설정할 수 있습니다. 제목, 작성자, 주제, 키워드, 생성자, 날짜 등의 속성을 가진 새로운 PdfMetaData 객체를 할당하기만 하면 됩니다. IronPDF를 사용하면 이러한 표준 메타데이터 필드를 프로그래밍 방식으로 손쉽게 업데이트할 수 있습니다.

PDF에 표준 속성 외에 사용자 지정 메타데이터 필드를 추가할 수 있나요?

예, IronPDF는 메타데이터 사전을 통해 사용자 지정 메타데이터 필드를 지원합니다. SetMetaDataDictionary 메서드를 사용하면 표준 필드 외에도 모든 키-값 쌍을 추가할 수 있습니다. 키가 일반 메타데이터 필드와 일치하지 않으면 IronPDF는 자동으로 해당 키를 사용자 지정 메타데이터로 처리합니다.

PDF 문서에서 기존 메타데이터를 어떻게 추출할 수 있나요?

IronPDF는 PDF 문서에서 기존 메타데이터를 모두 검색하는 GetMetaDataDictionary 메서드를 제공합니다. 이 메서드는 표준 및 사용자 지정 메타데이터 필드를 모두 포함하는 딕셔너리를 반환하므로 문서에 저장된 메타데이터 정보에 액세스하고 처리할 수 있습니다.

편집 가능한 표준 메타데이터 필드는 무엇입니까?

IronPDF는 제목, 저자, 주제, 키워드, 생성자, 제작자, 생성일, 수정일을 포함한 모든 표준 PDF 메타데이터 필드를 지원합니다. 이러한 필드는 PdfMetaData 객체를 통해 설정할 수 있으며 문서 구성 및 검색에 필수적입니다.

PDF에 메타데이터를 설정한 후 어떻게 볼 수 있나요?

IronPDF를 사용하여 메타데이터를 설정한 후에는 모든 PDF 뷰어에서 문서 속성에 접근하여 해당 메타데이터를 확인할 수 있습니다. 대부분의 PDF 뷰어에서는 세 개의 세로 점을 클릭하거나 파일 메뉴에서 문서 속성을 선택하면 프로그램으로 설정한 메타데이터를 포함한 모든 메타데이터 필드를 볼 수 있습니다.

메타데이터 조작을 다른 PDF 작업과 결합할 수 있습니까?

물론입니다! IronPDF는 메타데이터 편집과 HTML을 PDF로 변환, PDF 양식 생성, 디지털 서명 등의 기능을 결합할 수 있도록 지원합니다. 따라서 포괄적인 문서 관리 시스템이나 규정 준수 기능을 구축하는 데 이상적입니다.

조르디 바르디아
소프트웨어 엔지니어
조르디는 Iron Software에서 일하지 않을 때는 파이썬, C#, C++에 가장 능숙하며 게임 프로그래밍을 합니다. 제품 테스트, 제품 개발 및 연구를 담당하며 지속적인 제품 개선에 크게 기여하고 있습니다. 다양한 경험은 그에게 끊임없는 도전과 흥미를 제공하며, Iron Software에서 일하는 가장 큰 장점 중 하나라고 합니다. 조르디는 플로리다주 마이애미에서 자랐으며 플로리다 대학교에서 컴퓨터 과학과 통계학을 전공했습니다.
시작할 준비 되셨나요?
Nuget 다운로드 17,527,568 | 버전: 2026.2 방금 출시되었습니다