Metadata biçiminde saklanan yükseklik, genişlik, marka, model vb. görüntü ayrıntılarını programlı olarak ekleyebilir, düzenleyebilir, kaldırabilir veya çıkarabilirsiniz. Bir C# geliştiricisi olarak, görüntülerin meta veri bilgilerini bulutta programlı olarak kolayca çıkarabilir ve işleyebilirsiniz. Bu makalede, C# dilinde bir REST API kullanarak görüntülerin meta verilerini nasıl ayıklayacağınızı ve değiştireceğinizi öğreneceksiniz.
Bu makalede aşağıdaki konular tartışılmaktadır/kapsanmaktadır:
- Belge Meta Verileri Manipülasyonu REST API ve .NET SDK
- REST API kullanarak Görüntülere Meta Veri Ekleme
- Bir REST API kullanarak Resmin Meta Verilerini Güncelleyin
- REST API kullanarak Görsellerden Meta Verileri Kaldırma
- Bir REST API kullanarak Görüntülerden Meta Verileri Çıkarın
Belge Meta Verileri Manipülasyonu REST API ve .NET SDK
JPEG resimlerin meta verilerini değiştirmek için .NET SDK of GroupDocs.Metadata Cloud API’sini kullanacağım. Belgelere ve görüntü dosyası biçimlerine meta veri özellikleri eklemenizi, düzenlemenizi, almanızı ve kaldırmanızı sağlar. Yalnızca arama kriterlerini tanımlamanız gerekir ve meta veri Cloud REST API, desteklenen dosya biçimleri içinde belirtilen meta veri işlemlerini halleder. Ayrıca, Cloud API için belge meta veri işleme aile üyeleri olarak Java SDK sağlar.
GroupDocs.Metadata’yı NuGet Paket Yöneticisinden veya Paket Yöneticisi konsolunda aşağıdaki komutu kullanarak Visual Studio projenize yükleyebilirsiniz:
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 bir REST API kullanarak Görüntülere Meta Veri Ekleme
Aşağıda verilen basit adımları izleyerek resimlere meta veri ekleyebilirsiniz:
- Görüntüyü Buluta Yükle
- C# Kullanarak Görüntüye Meta Veri Ekleme
- Güncellenen resmi İndir
Resmi Yükle
Öncelikle, aşağıda verilen kod örneğini kullanarak JPEG dosyasını Buluta yükleyin:
// api başlatma
FileApi fileApi = new FileApi(configuration);
string path = @"C:\Files";
var file = Directory.GetFiles(path, "input.jpg", 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 JPEG görüntü dosyası, bulut üzerindeki kontrol panelinizin dosyalar bölümünde mevcut olacaktır.
C# kullanarak Görüntüye Meta Veri Ekleme
Aşağıda verilen adımları izleyerek programlı olarak JPEG görüntüsüne meta veri ekleyebilirsiniz.
- Bir MetadataApi örneği oluşturun
- FileInfo modelinde JPEG görüntü dosyası yolunu ayarlayın
- AddOptions’ı tanımlayın
- AddProperty modelini kullanarak özellik için Değer ve SearchCriteria ayarlayın
- AddOptions ile AddRequest oluşturun
- MetadataApi.Add() yöntemini çağırarak sonuçları alın
Aşağıdaki kod örneği, bir REST API kullanarak bir JPEG görüntüsüne meta verilerin nasıl ekleneceğini gösterir.
// api başlatma
var apiInstance = new MetadataApi(configuration);
// giriş görüntü yolu
var fileInfo = new GroupDocs.Metadata.Cloud.Sdk.Model.FileInfo
{
FilePath = "input.jpg"
};
// meta veri ekleme seçeneklerini tanımlayın
var options = new AddOptions
{
FileInfo = fileInfo,
Properties = new List<AddProperty>
{
new AddProperty
{
Value = "All rights reserved.",
Type = "String",
SearchCriteria = new SearchCriteria
{
TagOptions = new TagOptions
{
PossibleName = "Copyright"
}
},
}
}
};
// istek ekle
var request = new AddRequest(options);
var response = apiInstance.Add(request);
Resmi İndir
Yukarıdaki kod örnekleri, güncellenmiş JPEG dosyasını buluta kaydeder ve aşağıdaki kod örneği kullanılarak indirilebilir:
// api başlatma
var fileApi = new FileApi(configuration);
// Varsayılan yol
var file = "metadata\\add_metadata\\input_jpg\\input.jpg";
// indirme isteği
var downloadRequest = new DownloadFileRequest(file, myStorage);
Stream downloadResponse = fileApi.DownloadFile(downloadRequest);
using (var fileStream = File.Create("C:\\Files\\input.jpg"))
{
downloadResponse.Seek(0, SeekOrigin.Begin);
downloadResponse.CopyTo(fileStream);
}
C# kullanarak Resmin Meta Verilerini Güncelleme
JPEG görüntüsünün meta verilerini aşağıda verilen adımları izleyerek programlı olarak güncelleyebilirsiniz.
- Bir MetadataApi örneği oluşturun
- FileInfo modelinde JPEG görüntü dosyası yolunu ayarlayın
- SetOptions’ı tanımlayın
- SetProperty modelini kullanarak özellik için NewValue ve SearchCriteria ayarlayı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 JPEG görüntüsünün meta verilerinin nasıl ayarlanacağını gösterir. Dosya yüklemek ve indirmek için lütfen daha önce belirtilen adımları izleyin.
// api başlatma
var apiInstance = new MetadataApi(configuration);
// giriş görüntü yolu
var fileInfo = new GroupDocs.Metadata.Cloud.Sdk.Model.FileInfo
{
FilePath = "input.jpg"
};
// meta veri seti seçeneklerini tanımlayın
var options = new SetOptions
{
FileInfo = fileInfo,
Properties = new List<SetProperty>
{
new SetProperty
{
NewValue = "Copyright 2021",
SearchCriteria = new SearchCriteria
{
TagOptions = new TagOptions
{
PossibleName = "Copyright"
}
},
Type = "String"
}
}
};
// güncelleme isteği
var request = new SetRequest(options);
var response = apiInstance.Set(request);
C# kullanarak Görüntüden Meta Verileri Kaldırma
Aşağıda verilen adımları izleyerek programlı olarak JPEG görüntüsünden meta verileri kaldırabilirsiniz.
- Bir MetadataApi örneği oluşturun
- FileInfo modelinde JPEG görüntü dosyası yolunu ayarlayın
- RemoveOptions’ı tanımlayın
- Arama kriterlerini belirleyin
- RemoveOptions ile RemoveRequest oluşturun
- MetadataApi.Remove() yöntemini çağırarak sonuçları alın
Aşağıdaki kod örneği, bir REST API kullanarak bir JPEG görüntüsünden meta verilerin nasıl kaldırılacağını gösterir. Dosya yüklemek ve indirmek için lütfen daha önce belirtilen adımları izleyin.
// api başlatma
var apiInstance = new MetadataApi(configuration);
// giriş görüntü yolu
var fileInfo = new GroupDocs.Metadata.Cloud.Sdk.Model.FileInfo
{
FilePath = "input.jpg"
};
// meta veri kaldırma seçeneklerini tanımlayın
var options = new RemoveOptions
{
FileInfo = fileInfo,
SearchCriteria = new SearchCriteria
{
TagOptions = new TagOptions
{
PossibleName = "Copyright"
}
}
};
// isteği kaldır
var request = new RemoveRequest(options);
var response = apiInstance.Remove(request);
C# kullanarak Görüntüden Meta Verileri Çıkarın
Meta verileri, aşağıda verilen adımları izleyerek programlı olarak JPEG görüntüsünden çıkarabilirsiniz.
- Bir MetadataApi örneği oluşturun
- FileInfo modelinde JPEG görüntü dosyası yolunu ayarlayın
- ExtractOptions’ı tanımlayın
- ExtractOptions ile ExtractRequest oluşturun
- MetadataApi.Extract() yöntemini çağırarak sonuçları alın
Aşağıdaki kod örneği, bir REST API kullanarak bir JPEG görüntüsünden meta verilerin nasıl çıkarılacağını gösterir. Bir dosya yüklemek için lütfen daha önce belirtilen adımları izleyin.
// api başlatma
var apiInstance = new MetadataApi(configuration);
// Kaynak dosyası
var fileInfo = new GroupDocs.Metadata.Cloud.Sdk.Model.FileInfo
{
FilePath = "input.jpg"
};
// seçenekleri ayıkla
var options = new ExtractOptions
{
FileInfo = fileInfo
};
// çıkarma isteği
var request = new ExtractRequest(options);
var response = apiInstance.Extract(request);
// çıkarılan meta veriler
if (response.MetadataTree.InnerPackages != null)
{
var innerPackages = response.MetadataTree.InnerPackages;
for (int i = 0; i < innerPackages.Count; i++)
{
Console.WriteLine($"\nPackage: {innerPackages[i].PackageName}");
var packageProperties = innerPackages[i].PackageProperties;
for (int j = 0; j < packageProperties.Count; j++)
{
Console.WriteLine(packageProperties[j].Name + " : " + packageProperties[j].Value);
}
}
}
Yukarıdaki kod örneği aşağıdaki çıktıyı üretecektir:
Package: FileFormat
FileFormat : 9
MimeType : image/jpeg
ByteOrder : 1
Width : 480
Height : 360
Package: Xmp
http://ns.microsoft.com/photo/1.0/ :
Package: Exif
Exif.GpsIfd :
Exif.ExifIfd :
Make : Canon
Model : Canon PowerShot S40
Orientation : System.Int32[]
XResolution : System.Double[]
YResolution : System.Double[]
ResolutionUnit : System.Int32[]
DateTime : 2003:12:14 12:01:44
YCbCrPositioning : System.Int32[]
ExifIfd : System.Int64[]
Exif.Thumbnail : System.Byte[]
Çevrimiçi Deneyin
Lütfen yukarıdaki API kullanılarak geliştirilen aşağıdaki JPEG Metadata manipülasyonu ücretsiz çevrimiçi aracını deneyin. https://products.groupdocs.app/metadata/jpeg
Çözüm
Bu makalede, buluttaki görüntülerden Meta Verileri nasıl ekleyeceğinizi, düzenleyeceğinizi, kaldıracağınızı ve ayıklayacağınızı öğrendiniz. Bu makalede ayrıca bir JPEG görüntü dosyasının programlı olarak buluta nasıl yükleneceği ve buluttan nasıl indirileceği açıklanmaktadır. 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.