البيانات الوصفية للمستند هي جزء من المعلومات حول المستند مثل المؤلف ووقت التحرير وما إلى ذلك المخزنة داخل المستند. بصفتك مطور C# ، يمكنك بسهولة تحرير معلومات البيانات الوصفية لمستندات PDF برمجيًا على السحابة. في هذه المقالة ، ستتعلم كيفية تحرير البيانات الوصفية لملفات PDF باستخدام واجهة برمجة تطبيقات REST في C#.

سيتم تناول الموضوعات التالية في هذه المقالة:

معالجة البيانات الوصفية للمستند REST API و .NET SDK

groupdocsmetadata-for-cloud

لتحرير البيانات الوصفية لمستند PDF ، سأستخدم .NET SDK of GroupDocs.Metadata Cloud API. يسمح لك بإضافة البيانات الوصفية وتحريرها واستردادها وإزالتها من جميع تنسيقات الملفات القياسية في الصناعة تقريبًا. يمكنك إجراء مثل هذه العمليات على PDF و Microsoft Word وجداول بيانات Excel وعروض PowerPoint التقديمية ورسائل البريد الإلكتروني في Outlook و Visio و OneNote و Project والصوت والفيديو و AutoCAD والأرشيف و JPEG و BMP و PNG و TIFF. كما أنها توفر Java SDK باعتبارها أعضاء عائلة معالجة بيانات تعريف المستندات لواجهة برمجة التطبيقات السحابية.

يمكنك تثبيت GroupDocs.Metadata Cloud SDK for .NET إلى مشروع Visual Studio الخاص بك من مدير حزمة NuGet كما هو موضح أدناه:

قم بتثبيت GroupDocs.Metadata Cloud عبر NuGet Package Manager

قم بتثبيت GroupDocs.Metadata Cloud عبر NuGet Package Manager

يمكنك أيضًا تثبيت حزمة NuGet باستخدام الأمر التالي في وحدة تحكم مدير الحزم:

Install-Package GroupDocs.Metadata-Cloud

يرجى الحصول على معرّف العميل وسر العميل من لوحة القيادة قبل البدء في اتباع الخطوات وأمثلة الكود المتاحة. بمجرد حصولك على معرّف العميل والسرية ، أضف الرمز كما هو موضح أدناه:

string clientID = "112f0f38-9dae-42d5-b4fc-cc84ae644972";
string clientSecret = "16ad3fe0bdc39c910f57d2fd48a5d618";
string myStorage = "";

Configuration configuration = new Configuration(clientID, clientSecret);
configuration.ApiBaseUrl = "https://api.groupdocs.cloud";

تحرير البيانات الوصفية لملفات PDF باستخدام REST API في C#

يمكنك تعيين البيانات الوصفية لمستندات PDF باتباع الخطوات البسيطة الواردة أدناه:

قم بتحميل المستند

أولاً ، قم بتحميل ملف PDF إلى السحابة باستخدام نموذج الرمز الوارد أدناه:

# تهيئة API
FileApi fileApi = new FileApi(configuration);
string path = @"C:\Files";

var file = Directory.GetFiles(path, "input.pdf", SearchOption.AllDirectories).FirstOrDefault();
if (file.Length != 0)
{
    var relativeFilePath = file.Replace(path, string.Empty).Trim(Path.DirectorySeparatorChar);

    var fileStream = File.Open(file, FileMode.Open);

    fileApi.UploadFile(new UploadFileRequest(relativeFilePath, fileStream, myStorage));
    fileStream.Close();
}

نتيجة لذلك ، سيكون ملف PDF الذي تم تحميله (input.pdf) متاحًا في قسم الملفات من لوحة المعلومات الخاصة بك على السحابة.

تحديث البيانات الوصفية لملفات PDF باستخدام C#

يمكنك تحديث البيانات الوصفية لملف PDF برمجيًا باتباع الخطوات الواردة أدناه.

  • قم بإنشاء مثيل لـ MetadataApi
  • قم بتعيين مسار ملف PDF في نموذج FileInfo
  • تحديد SetOptions
  • قم بتوفير NewValue والنوع لـ SetPropert
  • حدد SearchCriteria ، وقم بتوفير NameOptions لتحديث القيمة من أجلها
  • قم بإنشاء SetRequest باستخدام SetOptions
  • احصل على النتائج عن طريق استدعاء طريقة MetadataApi.Set()

يوضح نموذج التعليمات البرمجية التالي كيفية تعيين البيانات الأولية حسب اسم الخاصية لمستند PDF باستخدام واجهة برمجة تطبيقات REST.

# تهيئة API
var apiInstance = new MetadataApi(configuration);

try
{
    var fileInfo = new GroupDocs.Metadata.Cloud.Sdk.Model.FileInfo
    {
        FilePath = "input.pdf",
        StorageName = myStorage
    };
    
    // تحديد خيارات المجموعة
    var options = new SetOptions
    {
        FileInfo = fileInfo,
        Properties = new List<SetProperty>
        {
            new SetProperty
            {
                NewValue = "hello",
                Type = "String",
                SearchCriteria = new SearchCriteria
                {
                    NameOptions = new NameOptions
                    {
                        Value = "Keywords"
                    }
                },
            }
        }
    };
    
    // تحديد طلب المجموعة
    var request = new SetRequest(options);

    var response = apiInstance.Set(request);
    Console.WriteLine($"Count of changes: {response.SetCount}");
    Console.WriteLine("Resultant file path: " + response.Path);
}
catch (Exception e)
{
    Console.WriteLine("Exception while calling MetadataApi: " + e.Message);
}
تحرير البيانات الوصفية لمستندات PDF باستخدام REST API في C#

قم بتعيين البيانات الوصفية حسب اسم الخاصية

يوضح مقتطف الشفرة التالي كيفية مطابقة اسم الخاصية تمامًا عن طريق تعيين خاصية ExactPhrase إلى True:

# تهيئة API
var apiInstance = new MetadataApi(configuration);
var fileInfo = new GroupDocs.Metadata.Cloud.Sdk.Model.FileInfo
{
    FilePath = "input.pdf",
    StorageName = myStorage
};

// تحديد خيارات المجموعة
var options = new SetOptions
{
    FileInfo = fileInfo,
    Properties = new List<SetProperty>
    {
        new SetProperty
        {
            NewValue = "This is title",
            Type = "String",
            SearchCriteria = new SearchCriteria
            {
                NameOptions = new NameOptions
                {
                    Value = "Title",
                    MatchOptions = new MatchOptions
                    {
                        ExactPhrase = true
                    }
                }
            },
        }
    }
};

// تحديد طلب المجموعة
var request = new SetRequest(options);

var response = apiInstance.Set(request);
تحرير البيانات الوصفية عن طريق مطابقة اسم الخاصية الدقيق في مستندات PDF باستخدام REST API في C#

قم بتعيين البيانات الوصفية عن طريق مطابقة اسم الخاصية بالضبط

يوضح مقتطف الشفرة التالي كيفية تحديد معايير البحث باستخدام التعبيرات العادية لتوفير MatchOptions:

# تهيئة API
var apiInstance = new MetadataApi(configuration);
var fileInfo = new GroupDocs.Metadata.Cloud.Sdk.Model.FileInfo
{
    FilePath = "input.pdf",
    StorageName = myStorage
};

// تحديد خيارات المجموعة
var options = new SetOptions
{
    FileInfo = fileInfo,
    Properties = new List<SetProperty>
    {
        new SetProperty
        {
            NewValue = "new value",
            Type = "String",
            SearchCriteria = new SearchCriteria
            {
                NameOptions = new NameOptions
                {
                    Value = "^Tit.*",
                    MatchOptions = new MatchOptions
                    {
                        IsRegex = true
                    }
                }
            },
        }
    }
};

// تحديد طلب المجموعة
var request = new SetRequest(options);

var response = apiInstance.Set(request);
تحرير البيانات الوصفية عن طريق مطابقة اسم الخاصية باستخدام التعبير العادي في مستندات PDF باستخدام REST API في C#

قم بتعيين البيانات الوصفية عن طريق مطابقة اسم الخاصية مع التعبير العادي

يوضح مقتطف الشفرة التالي كيفية تحديث البيانات الوصفية من خلال توفير قيمة الخاصية:

# تهيئة API
var apiInstance = new MetadataApi(configuration);
var fileInfo = new GroupDocs.Metadata.Cloud.Sdk.Model.FileInfo
{
    FilePath = "input.pdf",
    StorageName = myStorage
};

// تحديد خيارات المجموعة
var options = new SetOptions
{
    FileInfo = fileInfo,
    Properties = new List<SetProperty>
    {
        new SetProperty
        {
            NewValue = "Simply set by Property Value",
            Type = "String",
            SearchCriteria = new SearchCriteria
            {
                ValueOptions = new ValueOptions
                {
                    Value = "Windows User",
                    Type = "String"
                }
            },
        }
    }
};

// تحديد طلب المجموعة
var request = new SetRequest(options);

var response = apiInstance.Set(request);
تحرير البيانات الوصفية عن طريق مطابقة قيمة الخاصية في مستندات PDF باستخدام REST API في C#

قم بتعيين البيانات الوصفية عن طريق مطابقة قيمة الخاصية

قم بتنزيل الملف المحدث

ستحفظ نماذج التعليمات البرمجية أعلاه ملف PDF المحدث على السحابة ويمكن تنزيلها باستخدام نموذج التعليمات البرمجية التالي:

# تهيئة API
var fileApi = new FileApi(configuration);
var file = "metadata\\set_metadata\\input_pdf\\input.pdf";
var downloadRequest = new DownloadFileRequest(file, myStorage);

Stream downloadResponse = fileApi.DownloadFile(downloadRequest);
using (var fileStream = File.Create("C:\\Files\\sample_input.pdf"))
{
    downloadResponse.Seek(0, SeekOrigin.Begin);
    downloadResponse.CopyTo(fileStream);
}

جرب عبر الإنترنت

يرجى تجربة أداة معالجة بيانات PDF الوصفية المجانية التالية عبر الإنترنت ، والتي تم تطويرها باستخدام واجهة برمجة التطبيقات المذكورة أعلاه.

https://products.groupdocs.app/metadata/pdf

خاتمة

في هذه المقالة ، تعلمت كيفية تحرير البيانات الوصفية لمستندات PDF على السحابة. توضح هذه المقالة أيضًا كيفية تحميل ملف PDF برمجيًا على السحابة ثم تنزيل الملف المحدث من السحابة. يمكنك معرفة المزيد عن GroupDocs.Metadata Manipulation Cloud API باستخدام التوثيق. نوفر أيضًا قسم مرجع واجهة برمجة التطبيقات الذي يتيح لك تصور واجهات برمجة التطبيقات الخاصة بنا والتفاعل معها مباشرةً من خلال المتصفح. في حالة وجود أي غموض ، فلا تتردد في الاتصال بنا على المنتدى.

أنظر أيضا