(PNG) (Taşınabilir Ağ Grafikleri) ve PDF(Taşınabilir Belge Biçimi) dijital dünyada farklı amaçlara hizmet eder. PNG, kayıpsız sıkıştırma ve şeffaflık desteği nedeniyle yüksek kaliteli görüntüler için yaygın olarak kullanılır ve bu da onu web tasarımı, grafik oluşturma ve ayrıntılı görsel içerik için ideal hale getirir. Öte yandan PDF, belge paylaşımı ve arşivleme için evrensel bir biçimdir ve aygıtlar arasında düzen tutarlılığını sağlar. PNG’yi PDF’ye dönüştürmek, derlemeler oluşturmak, profesyonel raporlar oluşturmak için yararlı bir işlemdir
- Görüntü Dönüştürme API’si
- PNG’yi PDF’ye dönüştür
- cURL Komutlarını Kullanarak PNG’yi PDF’ye Çevrimiçi Dönüştürme
Görüntü Dönüştürme API’si
Aspose.Imaging Cloud, müşterilerimizin Cloudta görüntü işleme ve düzenleme yetenekleri aramasını kolaylaştırmak için geliştirilen özel REST API’mizdir. Görüntüyü yeniden boyutlandırma, kırpma, döndürme, ölçekleme, çevirme, arama, diğer Desteklenen Dosya Biçimlerine aktarma gibi işlemleri gerçekleştirebilirsiniz. Şimdi, bu makaleye göre, Aspose.Imaging Cloud etrafında bir sarmalayıcı olan Aspose.Imaging Cloud SDK for .NET kullanacağız.
Kurulum
.NET Cloud SDK NuGet ve GitHub üzerinden indirilebilir. SDK’yi NuGet üzerinden yüklemek için lütfen terminalde aşağıdaki komutu çalıştırın:
nuget install Aspose.Imaging-Cloud
NuGet Paket Yöneticisi’nden yüklemeniz gerekirse lütfen aşağıdaki komutu çalıştırın
PM> Install-Package Aspose.Imaging-Cloud
Visual Studio’ya yükleyin
Başka bir yaklaşım da doğrudan Visual Studio içinden kurulumdur:
- Çözüm Gezgini’ni açın.
- Projeyi genişletin ve çözümünüz içindeki Paketler klasörüne sağ tıklayın.
- NuGet Paketlerini Yönet… seçeneğini belirleyin.
- Gözat sekmesine tıklayın ve “Aspose.Imaging-Cloud” ifadesini arayın.
- Aspose.Imaging-Cloud paketinin yanındaki onay kutusunu tıklayın, sağ sekmede uygun sürümü seçin ve Paket Ekle butonuna tıklayın.
Cloud Aboneliği
Bir sonraki adım, Aspose.Cloud panosunu ziyaret ederek ücretsiz bir abonelik hesabı oluşturmaktır. Bir GitHub veya Google hesabınız varsa, sadece Kaydolun. Aksi takdirde, Yeni Hesap Oluştur düğmesine tıklayın ve gerekli bilgileri sağlayın.
PNG’yi PDF’ye dönüştür
PNG görüntüsünü PDF formatına dönüştürmek için bu gereksinimi karşılamak üzere aşağıdaki iki API’den birini kullanabiliriz:
GET API’si önce Cloud Storage’a bir görüntü yüklemenizi ve ardından dönüştürmeyi gerçekleştirmenizi bekler. İkinci API ise görüntüyü doğrudan istek gövdesine geçirmenizi ve son çıktının Cloud Storage’da depolanmasını gerektirir.
Cloud Depolamadan PNG Yükle
Aşağıdaki adımlar, bir görüntüyü önce Cloud depolamaya nasıl yükleyeceğimizi ve ardından dönüştürmeyi nasıl gerçekleştireceğimizi tanımlar. Görüntü yükleme rutinini atlarsak, aynı kod parçacığıyla Cloud depolamada bulunan herhangi bir görüntüyü PDF formatına dönüştürebiliriz.
- İlk olarak, Client ID ve Client Secret ayrıntılarını argüman olarak geçirerek bir ImagingApi nesnesi oluşturmamız gerekiyor.
- İkinci olarak, PNG resmini yerel sürücünüzden yükleyin ve bunu UploadFileRequest nesnesine argüman olarak geçirin.
- Üçüncüsü, dosyayı Cloud depolamaya yüklemek için ImagingApi’nin UploadFile(…) metodunu çağırın (görüntü zaten Cloud depolamada mevcutsa bu adımı atlayabilirsiniz).
- Resim adını ve sonuç çıktı biçimini argüman olarak alan ConvertImageRequest sınıfının bir örneğini oluşturun. Klasör ve Depolama adları isteğe bağlıdır.
- Şimdi dönüşümü başlatmak için ImagingApi sınıfının ConvertImage(…) metodunu çağırın.
- Son olarak, yanıt akışlı bir görüntü içerdiğinden, File.Create kullanarak nesneyi yerel bir sürücüye kaydedebiliriz (yöntem aşağıda gösterilmiştir).
// ClientID'yi https://dashboard.aspose.cloud/ adresinden alın
string clientSecret = "caac6e3d4a4724b2feb53f4e460eade3";
string clientID = "4ccf1790-accc-41e9-8d18-a78dbb2ed1aa";
// giriş PNG dosyasının yolu
string imageFile = "poodle.png";
// çıktı dosya biçimi
string format = "pdf";
// sonuçtaki PDF belgesinin adı
string resultantFile = "resultant.pdf";
// dosyayı yerel sürücüden yükle
using (var file = System.IO.File.OpenRead("/Users/nshahbaz/Desktop/" + imageFile))
{
var uploadFileRequest = new UploadFileRequest(imageFile, file);
// Orijinal belgeyi Cloud Depolamaya yükleyin
imagingApi.UploadFile(uploadFileRequest);
}
try
{
// ImageRequest Oluştur
var request = new ConvertImageRequest(imageFile, format, null, null);
// dönüştürme işlemini başlat
Stream updatedImage = imagingApi.ConvertImage(request);
// dönüşüm başarılı olursa başarı mesajını yazdır
if (request != null && request.Equals("OK"))
{
Console.WriteLine("The PNG successfully converted to PDF !");
}
// çıktıyı sistem sürücüsüne kaydetmek için yöntemi çağırın
saveToDisk(updatedImage, "/Users/nshahbaz/Desktop/"+resultantFile);
}
catch (Exception ex)
{
Console.WriteLine("error:" + ex.Message + "\n" + ex.StackTrace);
}
// steam nesnesini dosya örneği olarak kaydetmek için özel yöntem
public static void saveToDisk(Stream responseStream, String resultantFile)
{
var fileStream = File.Create(resultantFile);
responseStream.Seek(0, SeekOrigin.Begin);
responseStream.CopyTo(fileStream);
fileStream.Close();
}
PNG’yi Yerel Sürücüden Yükle
Aşağıdaki bölümde, istek gövdesine doğrudan iletilen bir görüntüyü dönüştürmek için CreateConvertedImage API’sini kullanacağız.
- İlk adım, İstemci Kimliği ve İstemci Gizli Bilgisi ayrıntılarını argüman olarak alan bir ImagingApi nesnesi oluşturmaktır.
- İkinci olarak, File.OpenRead nesnesini kullanarak PNG görüntüsünü yerel sürücüden okuyun.
- Üçüncüsü, argüman olarak ImageStream ve çıktı formatını alan ConvertedImageRequest nesnesini oluşturun.
- Daha sonra dönüştürme işlemini gerçekleştirmek için ImagingApi’nin CreateConvertedImage(…) metodunu çağırın.
- Son olarak, ortaya çıkan PDF’yi File.Create nesnesini kullanarak kaydedin.
// ClientID'yi https://dashboard.aspose.cloud/ adresinden alın
string clientSecret = "caac6e3d4a4724b2feb53f4e460eade3";
string clientID = "4ccf1790-accc-41e9-8d18-a78dbb2ed1aa";
// giriş PNG dosyasının yolu
string imageFile = "poodle.png";
// çıktı dosya biçimi
string format = "pdf";
// sonuçtaki PDF belgesinin adı
string resultantFile = "resultant.pdf";
try
{
using (var imageStream = System.IO.File.OpenRead("/Users/nshahbaz/Desktop/" + imageFile))
{
var request = new CreateConvertedImageRequest(imageStream, format, null, null);
Stream updatedImage = imagingApi.CreateConvertedImage(request);
if (request != null && request.Equals("OK"))
{
Console.WriteLine("PNG successfully converted to PDF !");
}
// Güncellenen görüntüyü yerel depolamaya kaydet
using (var fileStream = File.Create("/Users/nshahbaz/Desktop/" + resultantFile))
{
updatedImage.Seek(0, SeekOrigin.Begin);
updatedImage.CopyTo(fileStream);
}
}
}
catch (Exception ex)
{
Console.WriteLine("error:" + ex.Message + "\n" + ex.StackTrace);
}
Test amaçlı olarak poodle.png girdisini ve resultant.pdf dönüştürülmüş dosyasını indirmeyi düşünebilirsiniz.
cURL Komutlarını Kullanarak PNG’yi PDF’ye Çevrimiçi Dönüştürme
API’lerimize cURL komutları aracılığıyla da erişilebilir, bu yüzden PNG’yi cURL Komutları kullanarak PDF’ye dönüştüreceğiz. Bu yüzden öncelikle İstemci Kimliği ve İstemci Gizli Ayrıntılarına dayalı bir JWT erişim belirteci oluşturmamız gerekiyor.
curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=4ccf1790-accc-41e9-8d18-a78dbb2ed1aa&client_secret=caac6e3d4a4724b2feb53f4e460eade3" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"
Erişim belirteci oluşturulduktan sonra, Cloud depolamada bulunan bir PNG görüntüsünü PDF formatına dönüştürmek için lütfen aşağıdaki komutu yürütün. Çıktı PDF’si daha sonra yerel bir sürücüde saklanır.
curl -X GET "https://api.aspose.cloud/v3.0/imaging/poodle.png/convert?format=pdf" \
-H "accept: application/json" \
-H "authorization: Bearer <JWT Token>" \
-o /Users/nshahbaz/Desktop/myResultant.pdf
Ücretsiz PNG’den PDF’e Dönüştürücü
PNG görüntülerini PDF’ye dönüştürme konusunda Cloud API’nin şaşırtıcı yeteneklerine tanık olmak için Ücretsiz çevrimiçi PNG’den Acrobat 3D PDF dönüştürücü Uygulamamızı kullanmayı deneyebilirsiniz.
Çözüm
Bu makalede, PNG’yi PDF formatına dönüştürmek için Aspose.Imaging Cloud‘un yeteneklerini inceledik. Ayrıca, dönüştürmenin .NET Cloud SDK ve cURL komutu kullanılarak da gerçekleştirilebileceğini gözlemledik. Ayrıca, REST API’yi doğrudan tarayıcı içinde test edebilmeniz için Swagger UI‘yı da sağladık.
Ayrıca, Cloud SDK’nın bir MIT lisansı altında dağıtıldığını ve tam kaynak kodunun GitHub üzerinden indirilebileceğini lütfen unutmayın. API’yi kullanırken herhangi bir sorunla karşılaşırsanız veya herhangi bir sorunuz olursa, lütfen Ücretsiz ürün destek forumu aracılığıyla bizimle iletişime geçmekten çekinmeyin.
İlgili makaleler
Daha fazla bilgi edinmek için aşağıdaki bağlantıları da ziyaret etmenizi öneririz: