متاداده فایل‌های PDF را با استفاده از C# ویرایش کنید

Metadata یک کارت ویزیت برای یک سند دیجیتال خاص است که متشکل از یک مجموعه ویژگی‌ها می‌باشد. این ویژگی‌ها شامل اطلاعات پایه‌ای درباره سند مانند عنوان، نویسنده، موضوع، کلمات کلیدی و غیره است. پلتفرم متادیتای قابل گسترش (XMP) یک فرمت مبتنی بر XML است که امکان ذخیره‌سازی متادیتای سند را به صورت جفت کلید/مقدار فراهم می‌کند. ما می‌توانیم اطلاعات سند و متادیتای XMP را به صورت برنامه‌نویسی در یک سند PDF اضافه/ویرایش کنیم. در این مقاله، یاد خواهیم گرفت که چگونه متادیتای فایل‌های PDF را با استفاده از C# ویرایش کنیم.

موضوعات زیر در این مقاله پوشش داده خواهند شد:

C# API برای ویرایش متاداده فایل‌های PDF

برای ویرایش اطلاعات متادیتا در یک PDF ، ما از Aspose.PDF for .NET API استفاده خواهیم کرد. این امکان را به ما می‌دهد که اسناد پشتیبانی شده را بدون استفاده از Adobe Acrobat تولید، تغییر، تبدیل، رندر، ایمن و چاپ کنیم. لطفاً یا دانلود DLL API را انجام دهید یا آن را با استفاده از NuGet نصب کنید.

PM> Install-Package Aspose.Pdf

ویرایش متادیتای یک فایل PDF در C#

ما می‌توانیم اطلاعات سند PDF را با استفاده از کلاس DocumentInfo ویرایش کنیم که نمایانگر اطلاعات متا در یک سند PDF است. ما می‌توانیم با دنبال کردن مراحل زیر، انواع خواص از پیش تعریف شده properties را تنظیم کنیم:

  1. Firstly, load a PDF document using the Document class.
  2. Next, create an instance of the DocumentInfo class with the Document class object as an argument.
  3. سپس ویژگی‌های مختلفی مانند نویسنده، تاریخ ایجاد، کلمات کلیدی، موضوع، عنوان و غیره را تنظیم کنید.
  4. در نهایت، فایل PDF را با استفاده از Document.Save() متد و مسیر فایل خروجی به عنوان آرگومان ذخیره کنید.

کد نمونه زیر نشان می‌دهد که چگونه متاداده یک فایل PDF را با استفاده از C# ویرایش کنیم.

// این مثال کد نشان می‌دهد که چگونه اطلاعات پایه یک سند PDF را تنظیم کنیم.
// Open document
Document pdfDocument = new Document("C:\\Files\\PDF\\sample.pdf");

// Initializa DocumentInfo object
DocumentInfo docInfo = new DocumentInfo(pdfDocument);

// مشخصات ویژگی‌های اطلاعات سند
docInfo.Author = "Aspose";
docInfo.CreationDate = DateTime.Now;
docInfo.Keywords = "Aspose.Pdf, DOM, API";
docInfo.ModDate = DateTime.Now;
docInfo.Subject = "PDF Information";
docInfo.Title = "Setting PDF Document Information";

// Save document
pdfDocument.Save("C:\\Files\\PDF\\sample_metadata.pdf");
متاداده یک فایل PDF را در C# ویرایش کنید.

Edit Metadata of a PDF File in C#.

متا داده های یک فایل PDF را با استفاده از C# دریافت کنید

ما می‌توانیم اطلاعات اولیه یک سند PDF را با دنبال کردن مراحل زیر بخوانیم:

  1. Firstly, load a PDF document using the Document class.
  2. Next, create an instance of the DocumentInfo class with the Document class object as an argument.
  3. سرانجام، اطلاعات سند را با خواندن مقادیر ویژگی‌های متاداده نشان دهید.

کد نمونه زیر نشان می‌دهد که چگونه می‌توان متادیتای یک فایل PDF را با استفاده از C# دریافت کرد.

// این مثال کد نحوه به دست آوردن اطلاعات پایه یک سند PDF را نشان می‌دهد.
// Open document
Document pdfDocument = new Document("C:\\Files\\PDF\\sample_metadata.pdf");

// اطلاعات سند را دریافت کنید
DocumentInfo docInfo = pdfDocument.Info;

// Show document information
Console.WriteLine("Author: {0}", docInfo.Author);
Console.WriteLine("Creation Date: {0}", docInfo.CreationDate);
Console.WriteLine("Keywords: {0}", docInfo.Keywords);
Console.WriteLine("Modify Date: {0}", docInfo.ModDate);
Console.WriteLine("Subject: {0}", docInfo.Subject);
Console.WriteLine("Title: {0}", docInfo.Title);
Author: Aspose
Creation Date: 2/9/2022 9:47:00 AM
Keywords: Aspose.Pdf, DOM, API
Modify Date: 2/9/2022 9:47:00 AM
Subject: PDF Information
Title: Setting PDF Document Information

فایل PDF را با استفاده از C# دریافت XMP Metadata کنید

ما می‌توانیم متا داده‌های XMP یک سند PDF را با دنبال کردن مراحل زیر بخوانیم:

  1. Firstly, load a PDF document using the Document class.
  2. Finally, read the Metadata property and extract the information.

کد نمونه زیر نشان می‌دهد که چگونه می‌توان متادیتای XMP یک فایل PDF را با استفاده از C# دریافت کرد.

// این مثال کد نشان می‌دهد که چگونه می‌توان متاداده XMP یک سند PDF را دریافت کرد.
// Open document
Document pdfDocument = new Document("C:\\Files\\PDF\\sample_xmp.pdf");

// Show XMP information
Console.WriteLine("xmp:CreateDate : " + pdfDocument.Metadata["xmp:CreateDate"]);
Console.WriteLine("xmp:Nickname : " + pdfDocument.Metadata["xmp:Nickname"]);
Console.WriteLine("xmp:CustomProperty : " + pdfDocument.Metadata["xmp:CustomProperty"]);
xmp:CreateDate: 2022-02-09T08:57:00.7+05:00
xmp:Nickname: Nickname
xmp:CustomProperty: Custom Value

در فایل PDF متادیتای XMP را با استفاده از C# تنظیم کنید.

ما می‌توانیم متاداده XMP را در یک فایل PDF با استفاده از ویژگی Metadata کلاس Document با دنبال کردن مراحل زیر تنظیم کنیم:

  1. Firstly, load a PDF document using the Document class.
  2. سپس مقادیر متا دیتا را با استفاده از خصوصیت Metadata تنظیم کنید.
  3. در نهایت، فایل PDF را با استفاده از Document.Save() متد با مسیر فایل خروجی به عنوان آرگومان ذخیره کنید.

کد نمونه زیر نشان می‌دهد که چگونه متاداده XMP یک فایل PDF را با استفاده از C# تنظیم کنید.

// این مثال کد نشان می‌دهد که چگونه متاداده XMP یک پرونده PDF را تنظیم کنید.
// Open document
Document pdfDocument = new Document("C:\\Files\\PDF\\sample.pdf");

// تنظیم ویژگی‌ها
pdfDocument.Metadata["xmp:CreateDate"] = DateTime.Now;
pdfDocument.Metadata["xmp:Nickname"] = "Nickname";
pdfDocument.Metadata["xmp:CustomProperty"] = "Custom Value";

// Save document
pdfDocument.Save("C:\\Files\\PDF\\sample_xmp.pdf");

شخصی‌سازی فضای نام متا داده XMP در یک فایل PDF

ما می‌توانیم همچنین URI فضای نام سفارشی را به جای مشخصات XMP تعریف‌شده در یک فایل PDF تنظیم کنیم. برای این منظور، API متد RegisterNamespaceUri را در کلاس Metadata فراهم می‌کند. ما می‌توانیم با دنبال کردن مراحل زیر، یک فضای نام متادیتا جدید با یک پیشوند ایجاد کنیم:

  1. Firstly, load a PDF document using the Document class.
  2. در مرحله بعد، متد RegisterNamespaceUri را با یک پیشوند و URI فضای نام به عنوان آرگومان‌ها فراخوانی کنید.
  3. سپس، مقادیر فراداده را با استفاده از ویژگی Metadata تنظیم کنید.
  4. در نهایت، فایل PDF را با استفاده از Document.Save() متد و مسیر فایل خروجی به عنوان آرگومان ذخیره کنید.

کد نمونه زیر نشان می‌دهد که چگونه می‌توان فضای نام متاداده سفارشی را در یک فایل PDF با استفاده از C# تنظیم کرد.

// این مثال کد نشان می‌دهد که چگونه URI فضای نام سفارشی را در یک سند PDF تنظیم کنید.
// Open document
Document pdfDocument = new Document("C:\\Files\\PDF\\sample.pdf");

// تنظیم ویژگی‌ها
pdfDocument.Metadata.RegisterNamespaceUri("myown", "http:// myown.xyz.com/xap/1.0/");
pdfDocument.Metadata["myown:ModifyDate"] = DateTime.Now;
pdfDocument.Metadata["myown:CreateDate"] = DateTime.Now;
pdfDocument.Metadata["myown:DeveloperName"] = "Developer Name";
pdfDocument.Metadata["myown:MyProperty"] = "My Custom Value";


// Save document
pdfDocument.Save("C:\\Files\\PDF\\sample_myown.pdf");

ما می‌توانیم ویژگی‌های متاداده XMP سفارشی شده را با دنبال کردن مراحل ذکر شده در بالا بخوانیم.

myown:ModifyDate: 2022-02-09T10:38:26.8+05:00
myown:CreateDate: 2022-02-09T10:38:26.8+05:00
myown:DeveloperName: Developer Name
myown:MyProperty: My Custom Value

Get a Free API License

شما می‌توانید بدون محدودیت‌های ارزیابی API را با درخواست یک مجوز موقت رایگان امتحان کنید.

نتیجه گیری

در این مقاله، ما یاد گرفته‌ایم که چگونه:

  • add/ edit the basic information of a PDF documents using C#;
  • set/ get the XMP metadata in a PDF file using C#;
  • set custom metadata namespace URI with a prefix.

علاوه بر این، می‌توانید اطلاعات بیشتری درباره Aspose.PDF برای API .NET با استفاده از documentation بیابید. در صورت هر گونه ابهام، لطفاً با کمال میل با ما در forum تماس بگیرید.

به همچنین نگاه کنید