Belge meta verileri, bir belgenin içinde saklanan yazar, düzenleme zamanı vb. gibi belge hakkında bir bilgi parçasıdır. Bir C# geliştiricisi olarak, PDF belgelerinin meta veri bilgilerini bulutta programlı olarak kolayca düzenleyebilirsiniz. Bu makalede, C# dilinde bir REST API kullanarak PDF dosyalarının Meta Verilerini nasıl düzenleyeceğinizi öğreneceksiniz.
Bu yazıda aşağıdaki konular ele alınacaktır:
- Belge Meta Verileri Manipülasyonu REST API ve .NET SDK
- REST API kullanarak PDF Belgelerinin Meta Verilerini Düzenleyin
Belge Meta Verileri Manipülasyonu REST API ve .NET SDK
Bir PDF belgesinin meta verilerini düzenlemek için .NET SDK of GroupDocs.Metadata Cloud API’sini kullanacağım. Neredeyse tüm endüstri standardı dosya formatlarından meta verileri eklemenize, düzenlemenize, almanıza ve kaldırmanıza olanak tanır. Bu tür işlemleri PDF, Microsoft Word, Excel elektronik tabloları, PowerPoint sunumları, Outlook e-postaları, Visio, OneNote, Project, ses, video, AutoCAD, arşiv, JPEG, BMP, PNG ve TIFF üzerinde gerçekleştirebilirsiniz. Ayrıca, Cloud API için belge meta veri işleme aile üyeleri olarak Java SDK sağlar.
GroupDocs.Metadata Cloud SDK for .NET’i aşağıda gösterildiği gibi NuGet Paket yöneticisinden Visual Studio projenize yükleyebilirsiniz:
NuGet Paketini, Paket Yöneticisi konsolunda aşağıdaki komutu kullanarak da kurabilirsiniz:
Install-Package GroupDocs.Metadata-Cloud
Lütfen adımları ve mevcut kod örneklerini izlemeye başlamadan önce gösterge tablosundan İstemci Kimliğinizi ve İstemci Sırrınızı alın. Müşteri Kimliğinizi ve Sırrınızı aldıktan sonra, kodu aşağıda gösterildiği gibi ekleyin:
string clientID = "112f0f38-9dae-42d5-b4fc-cc84ae644972";
string clientSecret = "16ad3fe0bdc39c910f57d2fd48a5d618";
string myStorage = "";
Configuration configuration = new Configuration(clientID, clientSecret);
configuration.ApiBaseUrl = "https://api.groupdocs.cloud";
C# dilinde REST API kullanarak PDF Dosyalarının Meta Verilerini Düzenleyin
Aşağıda verilen basit adımları izleyerek PDF belgelerinin meta verilerini ayarlayabilirsiniz:
- PDF dosyasını Buluta Yükle
- PDF Belgelerinin Meta Verilerini C# Kullanarak Güncelleyin
- Ortaya çıkan dosyayı İndir
Belgeyi Yükle
Öncelikle, aşağıda verilen kod örneğini kullanarak PDF dosyasını Buluta yükleyin:
# api başlatma
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();
}
Sonuç olarak, yüklenen PDF dosyası (input.pdf), bulut üzerindeki kontrol panelinizin dosyalar bölümünde mevcut olacaktır.
C# kullanarak PDF Dosyalarının Meta Verilerini Güncelleyin
Aşağıda verilen adımları izleyerek bir PDF dosyasının meta verilerini programlı olarak güncelleyebilirsiniz.
- Bir MetadataApi örneği oluşturun
- FileInfo modelinde PDF dosya yolunu ayarlayın
- SetOptions’ı tanımlayın
- SetPropert için NewValue ve Type sağlayın
- SearchCriteria’yı tanımlayın, değeri güncellenecek NameOptions’ı sağlayın
- SetOptions ile SetRequest oluşturun
- MetadataApi.Set() yöntemini çağırarak sonuçları alın
Aşağıdaki kod örneği, bir REST API kullanarak bir PDF belgesinin özellik adına göre meta verilerinin nasıl ayarlanacağını gösterir.
# api başlatma
var apiInstance = new MetadataApi(configuration);
try
{
var fileInfo = new GroupDocs.Metadata.Cloud.Sdk.Model.FileInfo
{
FilePath = "input.pdf",
StorageName = myStorage
};
// Set Seçeneklerini Tanımla
var options = new SetOptions
{
FileInfo = fileInfo,
Properties = new List<SetProperty>
{
new SetProperty
{
NewValue = "hello",
Type = "String",
SearchCriteria = new SearchCriteria
{
NameOptions = new NameOptions
{
Value = "Keywords"
}
},
}
}
};
// Set Talebini Tanımla
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);
}
Aşağıdaki kod parçacığı, ExactPhrase özelliğini True olarak ayarlayarak tam özellik adının nasıl eşleştirileceğini gösterir:
# api başlatma
var apiInstance = new MetadataApi(configuration);
var fileInfo = new GroupDocs.Metadata.Cloud.Sdk.Model.FileInfo
{
FilePath = "input.pdf",
StorageName = myStorage
};
// Set Seçeneklerini Tanımla
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
}
}
},
}
}
};
// Set Talebini Tanımla
var request = new SetRequest(options);
var response = apiInstance.Set(request);
Aşağıdaki kod parçacığı, MatchOptions’ı sağlamak için Normal ifadeler kullanılarak arama ölçütlerinin nasıl tanımlanacağını gösterir:
# api başlatma
var apiInstance = new MetadataApi(configuration);
var fileInfo = new GroupDocs.Metadata.Cloud.Sdk.Model.FileInfo
{
FilePath = "input.pdf",
StorageName = myStorage
};
// Set Seçeneklerini Tanımla
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
}
}
},
}
}
};
// Set Talebini Tanımla
var request = new SetRequest(options);
var response = apiInstance.Set(request);
Aşağıdaki kod parçacığı, özellik değeri sağlayarak meta verilerin nasıl güncelleneceğini gösterir:
# api başlatma
var apiInstance = new MetadataApi(configuration);
var fileInfo = new GroupDocs.Metadata.Cloud.Sdk.Model.FileInfo
{
FilePath = "input.pdf",
StorageName = myStorage
};
// Set Seçeneklerini Tanımla
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"
}
},
}
}
};
// Set Talebini Tanımla
var request = new SetRequest(options);
var response = apiInstance.Set(request);
Güncellenmiş Dosyayı İndirin
Yukarıdaki kod örnekleri, güncellenmiş PDF dosyasını buluta kaydeder ve aşağıdaki kod örneği kullanılarak indirilebilir:
# api başlatma
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);
}
Çevrimiçi Deneyin
Lütfen yukarıdaki API kullanılarak geliştirilen aşağıdaki ücretsiz çevrimiçi PDF Meta Veri işleme aracını deneyin.
https://products.groupdocs.app/metadata/pdf
Çözüm
Bu makalede, PDF belgelerinin Meta Verilerini bulutta nasıl düzenleyeceğinizi öğrendiniz. Bu makale ayrıca bir PDF dosyasını programlı olarak buluta nasıl yükleyeceğinizi ve ardından güncellenmiş dosyayı buluttan nasıl indireceğinizi de açıkladı. Belgeleri kullanarak GroupDocs.Metadata Manipulation Cloud API hakkında daha fazla bilgi edinebilirsiniz. Ayrıca, API’lerimizi doğrudan tarayıcı aracılığıyla görselleştirmenize ve bunlarla etkileşimde bulunmanıza olanak tanıyan bir API Referansı bölümü de sağlıyoruz. Herhangi bir belirsizlik durumunda, lütfen forumda bizimle iletişime geçmekten çekinmeyin.