Görüntüleri PDF’ye dönüştürme, dosya işleme uygulamaları için önemli ve kullanışlı bir senaryodur. Bu yazıda, C# veya VB.NET kullanarak JPG, PNG, TIFF, EMF, WMF ve BMP görüntülerini PDF dönüştürmeye dönüştürmeyi öğreneceğiz. Aşağıda yükleme adımları ve görüntüleri dönüştürmek için olası kullanım durumlarından birkaçı verilmiştir:

C# Image to PDF Converter API - Kurulum

Aspose.PDF for .NET API’sini kullanarak bu görüntü formatlarını PDF’e dönüştürme işlemini gerçekleştireceğiz. Sürümler bölümünden veya aşağıdaki komutla NuGet Gallery aracılığıyla indirebilirsiniz:

Install-Package Aspose.Pdf -Version 20.9.0

Yani API şimdiye kadar başarıyla kuruldu. Farklı kullanım durumlarını keşfetmeye devam edelim:

JPG’yi C# ile PDF’ye dönüştürün

Bir JPG görüntüsünü aşağıdaki adımları uygulayarak kolayca PDF’e dönüştürebilirsiniz:

  1. Belge sınıfının nesnesini başlat
  2. PDF belgesine yeni bir Sayfa ekleyin
  3. JPG resmini yükleyin ve paragrafa ekleyin
  4. Çıkış PDF’sini kaydet

Aşağıdaki kod parçacığı, C# kullanarak JPG Görüntüsünün PDF’ye nasıl dönüştürüleceğini gösterir:

// Giriş JPG dosyasını yükle
String path = dataDir + "Aspose.jpg";

// Yeni PDF belgesini başlat
Document doc = new Document();

// Boş belgeye boş sayfa ekle
Page page = doc.Pages.Add();
Aspose.Pdf.Image image = new Aspose.Pdf.Image();
image.File = (path);

// Bir sayfaya resim ekleyin
page.Paragraphs.Add(image);

// Çıktı PDF dosyasını kaydet
doc.Save(dataDir + "ImagetoPDF.pdf");

JPG’nin PDF’e dönüştürülmesinin ekran görüntüsü aşağıdadır:

Görüntüden PDF'ye

Ancak bu ekran görüntüsünde görüntünün bir PDF sayfasına dönüştürüldüğünü ancak çıktı PDF belgesinde varsayılan sayfa boyutlarının ve kenar boşluklarının uygulandığını fark edebilirsiniz. Aspose.PDF for .NET API, görüntü boyutlarıyla tam olarak aynı boyutta PDF oluşturmanıza yardımcı olan sayfa boyutlarını ve kenar boşluğunu kontrol etmenizi sağlar. Bu özelliği keşfetmeye devam edelim:

Görüntüyü Aynı Sayfa Yüksekliği ve Genişliği ile PDF’ye Dönüştürün

Yukarıdaki ekran görüntüsünde daha büyük sayfa boyutunu fark edebileceğiniz için, yukarıdaki kullanım örneğinden bu örneğe devam edin. Sayfayla aynı yükseklik ve genişlikte bir görüntüyü PDF’ye nasıl dönüştüreceğimizi öğrenelim. Görüntü boyutlarını alacağız ve buna göre PDF belgesinin sayfa boyutlarını aşağıdaki adımlarla ayarlayacağız:

  1. Giriş görüntü dosyasını yükle
  2. Resmin yüksekliğini ve genişliğini alın
  3. Bir sayfanın yüksekliğini, genişliğini ve kenar boşluklarını ayarlama
  4. Çıktı PDF dosyasını kaydedin

Aşağıdaki kod parçacığı, C# kullanarak bir Görüntünün aynı sayfa yüksekliği ve genişliğine sahip PDF’ye nasıl dönüştürüleceğini gösterir:

// Giriş JPG resim dosyasını yükle
String path = dataDir + "Aspose.jpg";
System.Drawing.Image srcImage = System.Drawing.Image.FromFile(path);

// Giriş görüntüsünün Yüksekliğini Oku
int h = srcImage.Height;

// Giriş görüntüsünün Yüksekliğini Oku
int w = srcImage.Width;

// Yeni bir PDF belgesi başlat
Document doc = new Document();

// Boş bir sayfa ekle
Page page = doc.Pages.Add();
Aspose.Pdf.Image image = new Aspose.Pdf.Image();
image.File = (path);

// Sayfa boyutlarını ve kenar boşluklarını ayarlayın
page.PageInfo.Height = (h);
page.PageInfo.Width = (w);
page.PageInfo.Margin.Bottom = (0);
page.PageInfo.Margin.Top = (0);
page.PageInfo.Margin.Right = (0);
page.PageInfo.Margin.Left = (0);
page.Paragraphs.Add(image);

// Çıktı PDF dosyasını kaydet
doc.Save(dataDir + "ImagetoPDF_HeightWidth.pdf");

Güncellenen kod parçacığı ile oluşturulan sayfa boyutlarındaki farkı görebilmeniz için:

Son olarak, sayfa boyutunun girdi görüntü boyutlarına göre tamamen benzer olduğunu ve artık ayarlanan varsayılan sayfa kenar boşlukları olmadığını fark edebilirsiniz.

C# kullanarak PNG’yi PDF’ye dönüştürün

PNG resim formatı, JPG resimlere kıyasla özellikleri nedeniyle popülerdir. Örneğin, PNG görüntüleri şeffaflığı destekler. Öncelikle, aşağıdaki adımlarla PNG’yi PDF’ye dönüştürelim:

  1. Giriş PNG resmini yükle
  2. Yükseklik ve genişlik değerlerini oku
  3. Yeni belge oluştur ve Sayfa ekle
  4. Sayfa boyutlarını ayarla
  5. Çıktı dosyasını kaydet

Ayrıca, aşağıdaki kod parçacığı, .NET uygulamalarınızda PNG’yi C# ile PDF’ye nasıl dönüştüreceğinizi gösterir:

// Giriş PNG dosyasını yükle
String path = dataDir + "Aspose.png";
System.Drawing.Image srcImage = System.Drawing.Image.FromFile(path);
int h = srcImage.Height;
int w = srcImage.Width;

// Yeni Belgeyi başlat
Document doc = new Document();
Page page = doc.Pages.Add();
Aspose.Pdf.Image image = new Aspose.Pdf.Image();
image.File = (path);

// Sayfa boyutlarını ayarla
page.PageInfo.Height = (h);
page.PageInfo.Width = (w);
page.PageInfo.Margin.Bottom = (0);
page.PageInfo.Margin.Top = (0);
page.PageInfo.Margin.Right = (0);
page.PageInfo.Margin.Left = (0);
page.Paragraphs.Add(image);

// Çıkış PDF'sini kaydet
doc.Save(dataDir + "ImagetoPDF.pdf");

C# kullanarak TIFF’i PDF’ye dönüştürün

Bir TIFF görüntüsü, bir TIFF görüntüsünün farklı görüntülere sahip birkaç kare içerebilmesi açısından geleneksel JPEG, PNG veya diğer biçimlerden farklıdır. Aspose.PDF dosya formatı, ister tek kare ister çok kare TIFF görüntüsü olsun, desteklenir. Böylece .NET uygulamalarınızda TIFF görüntüsünü PDF’e dönüştürebilirsiniz. Bu nedenle, çok sayfalı TIFF görüntüsünü aşağıdaki adımlarla çok sayfalı PDF belgesine dönüştürme örneğini ele alacağız:

  1. Document sınıfının bir örneğini oluşturun
  2. Giriş TIFF resmini yükle
  3. Çerçevelerin FrameDimension’ını alın
  4. Her çerçeve için yeni sayfa ekle
  5. Son olarak, görüntüleri PDF sayfalarına kaydedin

Ayrıca, aşağıdaki kod parçacığı, çok sayfalı veya çok çerçeveli TIFF görüntüsünün C# ile PDF’ye nasıl dönüştürüleceğini gösterir:

// Yeni Belgeyi başlat
Document pdf = new Document();

//TIFF görüntüsünü akışa yükleyin
MemoryStream ms = new MemoryStream();
new FileStream(dataDir + @"Aspose.tiff", FileMode.Open).CopyTo(ms);
Bitmap myimage = new Bitmap(ms);
// Çok sayfalı veya çok çerçeveli TIFF'i PDF'ye dönüştürün
FrameDimension dimension = new FrameDimension(myimage.FrameDimensionsList[0]);
int frameCount = myimage.GetFrameCount(dimension);

// Her kareyi yineleyin
for (int frameIdx = 0; frameIdx <= frameCount - 1; frameIdx++)
{
    Page sec = pdf.Pages.Add();

    myimage.SelectActiveFrame(dimension, frameIdx);

    MemoryStream currentImage = new MemoryStream();
    myimage.Save(currentImage, ImageFormat.Tiff);

    Aspose.Pdf.Image imageht = new Aspose.Pdf.Image();
    imageht.ImageStream = currentImage;
    sec.Paragraphs.Add(imageht);
}

// Çıktı PDF dosyasını kaydet
pdf.Save(dataDir + "TifftoPDF.pdf");

EMF Görüntüsünü C# kullanarak PDF’ye dönüştürün

Gelişmiş Meta Dosyası Biçimi olarak da bilinen EMF görüntüleri aslında cihazdan bağımsız görüntülerdir. Ayrıca, aşağıdaki adımları kullanarak EMF’yi PDF görüntüsüne dönüştürebilirsiniz:

  1. İlk olarak, Document sınıf nesnesini başlatın
  2. EMF resim dosyasını yükle
  3. Yüklenen EMF görüntüsünü bir Sayfaya ekleyin
  4. PDF belgesini kaydet

Ayrıca, aşağıdaki kod parçacığı, .NET kod parçacığınızda bir EMF’yi C# ile PDF’ye nasıl dönüştüreceğinizi gösterir:

// Yeni PDF belgesini başlat
var doc = new Document();

// Giriş EMF görüntü dosyasının yolunu belirtin
var imageFile = dataDir + "drawing.emf";
var page = doc.Pages.Add(); 
string file = imageFile;
FileStream filestream = new FileStream(file, FileMode.Open, FileAccess.Read);
BinaryReader reader = new BinaryReader(filestream);
long numBytes = new FileInfo(file).Length;
byte[] bytearray = reader.ReadBytes((int)numBytes);
Stream stream = new MemoryStream(bytearray);
var b = new Bitmap(stream);

// Sayfa boyutu özelliklerini belirtin
page.PageInfo.Margin.Bottom = 0;
page.PageInfo.Margin.Top = 0;
page.PageInfo.Margin.Left = 0;
page.PageInfo.Margin.Right = 0;
page.PageInfo.Width = b.Width;
page.PageInfo.Height = b.Height;
var image = new Aspose.Pdf.Image();
image.File = imageFile;
page.Paragraphs.Add(image);

//Çıktı PDF belgesini kaydet
doc.Save(dataDir + "EMFtoPDF.pdf");

BMP’yi C# ile PDF’ye dönüştürün

BMP görüntüler, Aspose.PDF for .NET API ile PDF’ye dönüştürebileceğiniz Bitmap görüntülerdir. Bu nedenle, BMP görüntülerini dönüştürmek için aşağıdaki adımları takip edebilirsiniz:

  1. Yeni bir Belge başlat
  2. Giriş BMP görüntüsünü yükle
  3. Son olarak, çıktı PDF dosyasını kaydedin

Bu nedenle, aşağıdaki kod parçacığı bu adımları izler ve C# kullanarak BMP’yi PDF’ye nasıl dönüştüreceğinizi gösterir:

Initialize empty PDF document
using (Document pdfDocument = new Document())
{
    pdfDocument.Pages.Add();
    Aspose.Pdf.Image image = new Aspose.Pdf.Image();

    // Örnek BMP görüntü dosyasını yükleyin
    image.File = dataDir + @"Sample.bmp";
    pdfDocument.Pages[1].Paragraphs.Add(image);

    // Çıktı PDF belgesini kaydet
    pdfDocument.Save(dataDir + @"BMPtoPDF.pdf");
}

Çözüm

Ne de olsa, C# kullanarak resimlerin PDF’e dönüştürülmesini farklı açılardan inceledik. JPG, PNG, TIFF, EMF ve BMP’den PDF’e dönüştürme dahil olmak üzere farklı dönüştürmeler ayrıntılı olarak ele alınmıştır. Ayrıca, sayfa boyutunu ve kenar boşluklarını ayarlarken görüntüyü PDF işlemeye nasıl iyileştireceğimizi öğrendik. Ayrıca, hala herhangi bir sorunuz veya sorunuz varsa lütfen Ücretsiz Destek Forumu aracılığıyla bize ulaşın.

Ayrıca bakınız

C# .NET ile AI’yı PNG, JPG, PSD ve PDF dosyasına dönüştürünC# ile Görüntüyü DOC’a DönüştürC# ile Görüntüyü DOCX’e Dönüştür
C# .NET’te JPG’yi DOC’a dönüştürünC# .NET’te JPG’yi DOCX’e dönüştürünC# .NET’te PNG’yi DOC’a dönüştürün
C# .NET’te PNG’yi DOCX’e dönüştürünPython’da PPT’yi JPG’ye dönüştürPython’da SVG’yi PNG’ye dönüştürün
Python’da PPT Slaytları için Küçük Resimler OluşturunJava’da Görüntü Kontrastını, Parlaklığı ve Gammayı AyarlayınC#’ta Görüntü Kontrastını, Parlaklığı ve Gammayı Ayarlayın
JPG Görüntülerini C# ile PNG’ye DönüştürJPG Görüntülerini Java’da PNG’ye DönüştürPNG Görüntülerini C# ile JPG’ye Dönüştür
PNG Görüntülerini Java’da JPG’ye DönüştürPython’da Word’ü Resme DönüştürC# dilinde Word belgelerinden Görüntüleri Çıkarın
Java’daki Word Belgelerinden Görüntüler ÇıkarınPython’da Word Belgelerinden Görüntüler ÇıkarınGörüntüleri C# ile Yeniden Boyutlandırın
Görüntüleri Java’da Yeniden BoyutlandırınGörüntüleri C# dilinde Döndürme ve ÇevirmeGörüntüleri Java’da Döndürme ve Çevirme