Metadata dokumentu jsou informace o dokumentu, jako je autor, čas úprav atd. uložené v dokumentu. Jako vývojář C# můžete snadno upravovat informace o metadatech pro dokumenty PDF programově v cloudu. V tomto článku se dozvíte, jak upravit metadata souborů PDF pomocí REST API v C#.

Tento článek bude obsahovat následující témata:

Manipulace s metadaty dokumentů REST API a .NET SDK

groupdocsmetadata-for-cloud

Pro úpravu metadat dokumentu PDF budu používat .NET SDK of GroupDocs.Metadata Cloud API. Umožňuje přidávat, upravovat, načítat a odstraňovat metadata z téměř všech standardních formátů souborů. Tyto operace můžete provádět s PDF, Microsoft Word, tabulkovými procesory Excel, prezentací PowerPoint, e-maily aplikace Outlook, Visio, OneNote, Project, audio, video, AutoCAD, archiv, JPEG, BMP, PNG a TIFF. Poskytuje také Java SDK jako členy rodiny manipulace s metadaty dokumentu pro Cloud API.

GroupDocs.Metadata Cloud SDK for .NET můžete nainstalovat do svého projektu Visual Studio ze správce balíčků NuGet, jak je znázorněno níže:

Nainstalujte GroupDocs.Metadata Cloud přes NuGet Package Manager

Nainstalujte GroupDocs.Metadata Cloud přes NuGet Package Manager

Balíček NuGet můžete také nainstalovat pomocí následujícího příkazu v konzole Správce balíčků:

Install-Package GroupDocs.Metadata-Cloud

Než začnete postupovat podle kroků a dostupných příkladů kódu, získejte své ID klienta a tajný klíč klienta z dashboard. Jakmile budete mít své ID klienta a tajný klíč, přidejte kód, jak je uvedeno níže:

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

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

Úprava metadat souborů PDF pomocí REST API v C#

Metadata dokumentů PDF můžete nastavit podle jednoduchých kroků uvedených níže:

Nahrajte dokument

Nejprve nahrajte soubor PDF do cloudu pomocí níže uvedeného příkladu kódu:

# inicializace 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();
}

V důsledku toho bude nahraný soubor PDF (vstup.pdf) dostupný v sekce souborů vašeho řídicího panelu v cloudu.

Aktualizujte metadata souborů PDF pomocí C#

Metadata souboru PDF můžete aktualizovat programově podle následujících kroků.

  • Vytvořte instanci MetadataApi
  • Nastavte cestu k souboru PDF v modelu FileInfo
  • Definujte SetOptions
  • Zadejte NewValue a Type pro SetPropert
  • Definujte SearchCriteria, zadejte NameOptions, pro které chcete aktualizovat hodnotu
  • Vytvořte SetRequest pomocí SetOptions
  • Získejte výsledky voláním metody MetadataApi.Set()

Následující ukázka kódu ukazuje, jak nastavit metadata podle názvu vlastnosti dokumentu PDF pomocí REST API.

# inicializace api
var apiInstance = new MetadataApi(configuration);

try
{
    var fileInfo = new GroupDocs.Metadata.Cloud.Sdk.Model.FileInfo
    {
        FilePath = "input.pdf",
        StorageName = myStorage
    };
    
    // Definujte možnosti sady
    var options = new SetOptions
    {
        FileInfo = fileInfo,
        Properties = new List<SetProperty>
        {
            new SetProperty
            {
                NewValue = "hello",
                Type = "String",
                SearchCriteria = new SearchCriteria
                {
                    NameOptions = new NameOptions
                    {
                        Value = "Keywords"
                    }
                },
            }
        }
    };
    
    // Definujte požadavek na sadu
    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);
}
Úprava metadat dokumentů PDF pomocí REST API v C#

Nastavit metadata podle názvu vlastnosti

Následující úryvek kódu ukazuje, jak přiřadit přesný název vlastnosti nastavením vlastnosti ExactPhrase na hodnotu True:

# inicializace api
var apiInstance = new MetadataApi(configuration);
var fileInfo = new GroupDocs.Metadata.Cloud.Sdk.Model.FileInfo
{
    FilePath = "input.pdf",
    StorageName = myStorage
};

// Definujte možnosti sady
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
                    }
                }
            },
        }
    }
};

// Definujte požadavek na sadu
var request = new SetRequest(options);

var response = apiInstance.Set(request);
Upravte metadata přiřazením přesného názvu vlastnosti v dokumentech PDF pomocí REST API v C#

Nastavit metadata podle přesného názvu vlastnosti

Následující fragment kódu ukazuje, jak definovat kritéria vyhledávání pomocí regulárních výrazů pro poskytnutí MatchOptions:

# inicializace api
var apiInstance = new MetadataApi(configuration);
var fileInfo = new GroupDocs.Metadata.Cloud.Sdk.Model.FileInfo
{
    FilePath = "input.pdf",
    StorageName = myStorage
};

// Definujte možnosti sady
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
                    }
                }
            },
        }
    }
};

// Definujte požadavek na sadu
var request = new SetRequest(options);

var response = apiInstance.Set(request);
Upravte metadata přiřazením názvu vlastnosti pomocí regulárního výrazu v dokumentech PDF pomocí REST API v C#

Nastavte metadata pomocí shody názvu vlastnosti s regulárním výrazem

Následující fragment kódu ukazuje, jak aktualizovat metadata poskytnutím hodnoty vlastnosti:

# inicializace api
var apiInstance = new MetadataApi(configuration);
var fileInfo = new GroupDocs.Metadata.Cloud.Sdk.Model.FileInfo
{
    FilePath = "input.pdf",
    StorageName = myStorage
};

// Definujte možnosti sady
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"
                }
            },
        }
    }
};

// Definujte požadavek na sadu
var request = new SetRequest(options);

var response = apiInstance.Set(request);
Upravte metadata porovnáním hodnoty vlastnosti v dokumentech PDF pomocí REST API v C#

Nastavte metadata podle hodnoty vlastnosti

Stáhněte si aktualizovaný soubor

Výše uvedené ukázky kódu uloží aktualizovaný soubor PDF do cloudu a lze je stáhnout pomocí následující ukázky kódu:

# inicializace 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);
}

Vyzkoušejte online

Vyzkoušejte prosím následující bezplatný online nástroj pro manipulaci s metadaty PDF, který je vyvinut pomocí výše uvedeného API.

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

Závěr

V tomto článku jste se naučili, jak upravit metadata dokumentů PDF v cloudu. Tento článek také vysvětluje, jak programově nahrát soubor PDF do cloudu a poté stáhnout aktualizovaný soubor z cloudu. Můžete se dozvědět ještě více o GroupDocs.Metadata Manipulation Cloud API pomocí dokumentace. Poskytujeme také sekci API Reference, která vám umožní vizualizovat a pracovat s našimi API přímo prostřednictvím prohlížeče. V případě jakýchkoliv nejasností nás neváhejte kontaktovat na fóru.

Viz také