C#'ta PDF dosyası nasıl kaydedilir (Başlangıç Eğitimi)
Bu makale, IronPDF'nin bir Windows Forms Uygulaması veya herhangi bir .NET Uygulamasından PDF dosyalarını nasıl kaydedeceğinizi keşfedecek.
IronPDF Kütüphanesi, C# uygulamalarında PDF dosyaları oluşturmak ve çalışmak için kullanımı kolay sınıflar ve yöntemler sağlayan bir .NET kütüphanesidir. Geliştiricilerin, sadece birkaç satır kodla PDF dosyaları oluşturmasını, değiştirmesini ve kaydetmesini sağlar; bu da onu Windows Forms Uygulamaları için mükemmel bir seçim haline getirir.
1. Adım: Yeni Bir Windows Forms Uygulaması Oluşturun
Öncelikle, yeni bir Visual Studio Projesi oluşturun. Visual Studio 2022'de yeni bir C# Windows Forms Uygulaması oluşturmak için adımlar aşağıdadır.
-
Aşağıda gösterildiği gibi Visual Studio 2022'yi açın.
Visual Studio 2022 - Başlangıç sayfasında 'Yeni bir proje oluştur' seçeneğine tıklayın ya da 'Dosya' > 'Yeni' > 'Proje'ye gidin.
-
'Yeni bir proje oluştur' iletişim kutusunda, 'Yeni bir proje oluştur' altında 'Windows Forms Uygulaması' veya 'Windows Forms Uygulaması (.NET Framework)' seçin.
Yeni Form Uygulaması -
Projeniz için bir ad girin ve kaydetmek istediğiniz yeri seçin.
Proje konumu - .NET Framework'ü seçin. Açılır menüden .NET 7.0'ı seçin.
-
Oluştur butonuna tıklayın.
Ek Bilgiler -
Visual Studio sizin için varsayılan 'Form1' adlı bir form ile yeni bir C# Windows Forms Uygulaması projesi oluşturacaktır.
Form1 projesi
İşte bu kadar! Şimdi tasarımcıyı kullanarak Windows Forms Uygulamasını inşa etmeye başlayacağız, PDF belgesi dosyası oluşturma ve kaydetme işlevselliği ve kontrolleri ekleyeceğiz.
2. Adım: Formu Tasarla
Formu tercihleriniz doğrultusunda tasarlayabilirsiniz. Bu eğitim, iki etiket, bir zengin metin kutusu ve iki buton ekleyerek minimalist bir tasarım yapacaktır.
Forma buton ekleme
3. Adım: IronPDF'yi Yükleyin
Bir sonraki adım, projede IronPDF'nin zengin işlevselliklerini kullanmak için yüklenmesidir.
IronPDF, Visual Studio'da NuGet Paket Yöneticisi kullanılarak yüklenebilir. Araçlar > NuGet Paket Yöneticisi > Paket Yöneticisi Konsolu yoluyla NuGet Paket Yöneticisi Konsolu'na gidebilirsiniz.
Aşağıdaki komutu yazın ve Enter'a basın:
Install-Package IronPdf
Bu komut, projenizdeki IronPDF paketini indirip yükleyecektir. Kurulum tamamlandıktan sonra IronPDF'yi kullanmaya başlayabiliriz.
PFD Dosyası Oluşturma ve Kaydetmek için Kod Yazma
Akışa başlamak için, Save_Click ve getFilePath metodlarını Form1.cs sınıfında yazın. Bu yöntemler, Google Chrome tarayıcı motorunu kullanarak HTML içeriğini PDF belgelerine dönüştürmek için bir yol sağlayan ChromePdfRenderer Sınıfı kütüphanesini kullanarak bir metin kutusunun içeriğini PDF dosyası olarak kaydetmek için birlikte kullanılır. Her yöntemin nasıl çalıştığını anlamak için geçelim.
Save_Click Yöntemi (PDF Belgesi Oluşturma)
Aşağıdaki yöntem bir buton-tıkla olayı için bir olay işleyicisidir. Bu yöntemin amacı, bir metin kutusunun içeriğini PDF dosyası olarak kaydetmektir.
private void Save_Click(object sender, EventArgs e)
{
// Get the file path to save the PDF file.
string filename = getFilePath();
// If the file path is not empty or null, proceed with saving the PDF file.
if (!String.IsNullOrEmpty(filename))
{
// Create a new instance of the ChromePdfRenderer class.
var renderer = new ChromePdfRenderer();
// Render the file contents of the text box as a PDF document using the ChromePdfRenderer.
var pdfDocument = renderer.RenderHtmlAsPdf(pdfContent.Text);
// Save the PDF document to the specified file path using the SaveAs method.
pdfDocument.SaveAs(filename);
// Show a message box to indicate that the PDF file has been saved successfully.
MessageBox.Show("PDF has been saved Successfully!");
}
}
private void Save_Click(object sender, EventArgs e)
{
// Get the file path to save the PDF file.
string filename = getFilePath();
// If the file path is not empty or null, proceed with saving the PDF file.
if (!String.IsNullOrEmpty(filename))
{
// Create a new instance of the ChromePdfRenderer class.
var renderer = new ChromePdfRenderer();
// Render the file contents of the text box as a PDF document using the ChromePdfRenderer.
var pdfDocument = renderer.RenderHtmlAsPdf(pdfContent.Text);
// Save the PDF document to the specified file path using the SaveAs method.
pdfDocument.SaveAs(filename);
// Show a message box to indicate that the PDF file has been saved successfully.
MessageBox.Show("PDF has been saved Successfully!");
}
}
Private Sub Save_Click(ByVal sender As Object, ByVal e As EventArgs)
' Get the file path to save the PDF file.
Dim filename As String = getFilePath()
' If the file path is not empty or null, proceed with saving the PDF file.
If Not String.IsNullOrEmpty(filename) Then
' Create a new instance of the ChromePdfRenderer class.
Dim renderer = New ChromePdfRenderer()
' Render the file contents of the text box as a PDF document using the ChromePdfRenderer.
Dim pdfDocument = renderer.RenderHtmlAsPdf(pdfContent.Text)
' Save the PDF document to the specified file path using the SaveAs method.
pdfDocument.SaveAs(filename)
' Show a message box to indicate that the PDF file has been saved successfully.
MessageBox.Show("PDF has been saved Successfully!")
End If
End Sub
Bu yöntemin ne yaptığının adım adım bir özeti:
- Metot, PDF dosyasının kaydedileceği dosya yolunu almak için
getFilePathmetodunu çağırır. - Dosya yolu boş ya da null değilse, yöntem PDF dosyasını kaydetme işlemine devam eder.
- Metot,
ChromePdfRenderersınıfının yeni bir örneğini oluşturur. Bu, Google Chrome tarayıcı motorunu kullanarak HTML içeriğini PDF belgesine dönüştürmek için bir yol sağlayan bir kütüphanedir. - Metot, metin kutusunun HTML içeriğini
ChromePdfRenderersınıfının RenderHtmlAsPdf Metodu ile PDF belgesine dönüştürür. Bu PDF belgesi, bir PdfDocument Değişkenine atanır. - Metot, PDF belgesini belirtilen dosya yoluna
PdfDocumentsınıfının SaveAs Metodu ile kaydeder. - Son olarak, yöntem PDF dosyasının başarıyla kaydedildiğini belirten bir mesaj kutusu gösterir.
getFilePath Yöntemi (PDF Dosyalarını Kaydetme)
Bu metot, kullanıcıya PDF dosyasının kaydedileceği dosya yolunu seçmesi için bir SaveFileDialog gösterir.
public string getFilePath()
{
// Create a new instance of the SaveFileDialog class.
SaveFileDialog saveFileDialog1 = new SaveFileDialog();
// Set the initial directory where the SaveFileDialog will open.
saveFileDialog1.InitialDirectory = @"D:\";
// Set the title of the SaveFileDialog.
saveFileDialog1.Title = "Save the PDF Files";
// Set the SaveFileDialog to check if the specified path exists.
saveFileDialog1.CheckPathExists = true;
// Set the default extension for the file type.
saveFileDialog1.DefaultExt = ".pdf";
// Set the filter to display only PDF files or all files.
saveFileDialog1.Filter = "PDF files (*.pdf)|*.pdf|All files (*.*)|*.*";
// Set the filter index to display the PDF filter as the default.
saveFileDialog1.FilterIndex = 2;
// Set the RestoreDirectory property to true so that the SaveFileDialog
// restores the current directory before closing.
saveFileDialog1.RestoreDirectory = true;
// Show the SaveFileDialog and get the result.
if (saveFileDialog1.ShowDialog() == DialogResult.OK)
{
// If the user clicked the OK button in the SaveFileDialog, return the selected file path.
return saveFileDialog1.FileName;
}
// If the user did not click the OK button, return an empty string.
return String.Empty;
}
public string getFilePath()
{
// Create a new instance of the SaveFileDialog class.
SaveFileDialog saveFileDialog1 = new SaveFileDialog();
// Set the initial directory where the SaveFileDialog will open.
saveFileDialog1.InitialDirectory = @"D:\";
// Set the title of the SaveFileDialog.
saveFileDialog1.Title = "Save the PDF Files";
// Set the SaveFileDialog to check if the specified path exists.
saveFileDialog1.CheckPathExists = true;
// Set the default extension for the file type.
saveFileDialog1.DefaultExt = ".pdf";
// Set the filter to display only PDF files or all files.
saveFileDialog1.Filter = "PDF files (*.pdf)|*.pdf|All files (*.*)|*.*";
// Set the filter index to display the PDF filter as the default.
saveFileDialog1.FilterIndex = 2;
// Set the RestoreDirectory property to true so that the SaveFileDialog
// restores the current directory before closing.
saveFileDialog1.RestoreDirectory = true;
// Show the SaveFileDialog and get the result.
if (saveFileDialog1.ShowDialog() == DialogResult.OK)
{
// If the user clicked the OK button in the SaveFileDialog, return the selected file path.
return saveFileDialog1.FileName;
}
// If the user did not click the OK button, return an empty string.
return String.Empty;
}
Public Function getFilePath() As String
' Create a new instance of the SaveFileDialog class.
Dim saveFileDialog1 As New SaveFileDialog()
' Set the initial directory where the SaveFileDialog will open.
saveFileDialog1.InitialDirectory = "D:\"
' Set the title of the SaveFileDialog.
saveFileDialog1.Title = "Save the PDF Files"
' Set the SaveFileDialog to check if the specified path exists.
saveFileDialog1.CheckPathExists = True
' Set the default extension for the file type.
saveFileDialog1.DefaultExt = ".pdf"
' Set the filter to display only PDF files or all files.
saveFileDialog1.Filter = "PDF files (*.pdf)|*.pdf|All files (*.*)|*.*"
' Set the filter index to display the PDF filter as the default.
saveFileDialog1.FilterIndex = 2
' Set the RestoreDirectory property to true so that the SaveFileDialog
' restores the current directory before closing.
saveFileDialog1.RestoreDirectory = True
' Show the SaveFileDialog and get the result.
If saveFileDialog1.ShowDialog() = DialogResult.OK Then
' If the user clicked the OK button in the SaveFileDialog, return the selected file path.
Return saveFileDialog1.FileName
End If
' If the user did not click the OK button, return an empty string.
Return String.Empty
End Function
Bu yöntemin ne yaptığının adım adım bir özeti:
- Metot,
SaveFileDialogsınıfının yeni bir örneğini oluşturur. Bu sınıf, Windows Forms kütüphanesinin bir parçasıdır ve kullanıcıya PDF dosyasının kaydedileceği bir dosya yolu seçmesine olanak tanıyan bir dialog kutusu sağlar. - Metot,
SaveFileDialognesnesinin davranışını özelleştirmek için birçok özelliğini ayarlar.InitialDirectoryözelliği, iletişim kutusunun ilk açılacağı dizini ayarlar.Titleözelliği, iletişim kutusunun başlığını ayarlar.CheckPathExistsözelliği, belirtilen yolun var olup olmadığını kontrol etmek isteyen iletişim kutusunun belirtimini ayarlar.DefaultExtözelliği, dosya türü için varsayılan dosya uzantısını ayarlar.Filterözelliği, iletişim kutusunda gösterilen dosya türü filtrelerini ayarlar.FilterIndexözelliği, varsayılan olarak gösterilecek filtreyi ayarlar. Son olarak,RestoreDirectoryözelliği, kapatılmadan önce geçerli dizini geri yükleyip yüklemeyeceğini belirtir. - Metot,
ShowDialogmetodunu çağırarakSaveFileDialoggösterir. Bu metot, iletişim kutusunu gösterir ve kullanıcının "Tamam" veya İptal düğmesine tıklayıp tıklamadığını belirten birDialogResultdeğeri döndürür. - Kullanıcı "Tamam" düğmesine tıklarsa, metot, kullanıcının seçtiği dosya yolunu
SaveFileDialog'unFileNameözelliğine erişerek döndürür. - Kullanıcı "İptal" düğmesine tıklarsa veya dialog kutusunu kapatırsa, yöntem boş bir dizgi döndürür.
Projeyi çalıştırıp çıktıyı görelim. Projeyi çalıştırın, ve aşağıdaki form açılacaktır.
Windows Forms projesini çalıştırma
PDF içeriğinizi girin ve aşağıda gösterildiği gibi "Kaydet" düğmesine tıklayın.
Kaydet iletişim kutusu
Aşağıdaki PDF oluşturuldu.
Oluşturulan PDF dosyası
IronPDF, HTML içeriğini PDF belgelerine dönüştürmek ve bunları ChromePdfRenderer sınıfı ve SaveFileDialog iletişim kutusu kullanarak kullanıcının seçtiği dosya yoluna kaydetmek için basit bir yol sağlar.
Sonuç
Windows Forms Uygulamasından PDF dosyalarını kaydetme yaygın bir gereksinimdir ve IronPDF bu görevi gerçekleştirmek için kolay kullanılabilir ve esnek bir yöntem sağlar. Bu makale, IronPDF'in bir C# Windows Forms Uygulamasında dosyalar oluşturmak, içerik eklemek ve kaydetmek için nasıl kullanılacağını gösterdi. IronPDF ile geliştiriciler, sadece birkaç satır kod ile uygulamalarından yüksek kaliteli PDF dosyaları oluşturabilir.
IronPDF, HTML'yi PDF'ye Dönüştürme Eğitimi, PDF Birleştirme Örnek Kodu, PDF Sayfalarını Bölme Kılavuzu, ve Metin ve Görüntü Çıkarma Nasıl Yapılır gibi bir dizi özellik sunar ve daha fazlası. IronPDF, gelişim için ücretsizdir ve ticari projelerde kullanımı sağlayan, özel destek ve güncellemeleri içeren Ticari Lisans ile Ücretsiz Deneme altında mevcuttur.
Ek olarak, IronPDF, Iron Suite'in bir parçasıdır ve şunları içeren bir .NET yazılım bileşenleri paketidir:
- Barkod oluşturma (IronBarcode),
- Excel yönetimi (IronXL),
- Metin çıkarma (IronOCR)
Tüm Iron Suite'i satın almak, beş ürünü iki ürün fiyatına alabileceğiniz için maliyet açısından etkili bir çözümdür.
Sıkça Sorulan Sorular
C# Windows Forms Uygulaması'nda PDF dosyasını nasıl kaydedebilirim?
IronPDF'yi kullanarak C# Windows Forms Uygulaması'nda bir form oluşturup, metin kutusu ve butonlar gibi kontroller ayarlayarak PDF kaydedebilirsiniz. İçeriği PDF olarak render edip kaydetmek için Save_Click yöntemini ChromePdfRenderer sınıfını kullanarak uygulayın.
C# kullanarak PDF kaydetme için Windows Forms Uygulaması nasıl ayarlanır?
PDF'leri kaydetmek için bir Windows Forms Uygulaması kurmak üzere Visual Studio'da yeni bir proje oluşturun, etiketler ve zengin metin kutusu gibi gerekli kontrolleri ekleyin ve PDF oluşturma yeteneklerinden faydalanmak için IronPDF'yi NuGet Paket Yöneticisi ile yükleyin.
HTML içeriği C# dilinde bir PDF'ye nasıl dönüştürülür?
IronPDF'nin RenderHtmlAsPdf yöntemini kullanarak C#'ta HTML içeriğini PDF'ye dönüştürebilirsiniz. Bu yöntem, HTML dizgilerini alıp doğrudan PDF belgelerine dönüştürmenizi sağlar.
PDF oluşturma bağlamında Save_Click yönteminin rolü nedir?
Save_Click yöntemi, bir düğme tıklama olayını yakalayarak IronPDF'nin render sınıflarını kullanarak metin kutusu içeriğini bir PDF dosyasına dönüştürme sürecini başlatan bir olay işleyicisi olarak hareket eder.
C# uygulamasında bir PDF kaydetme dosya yolu seçimi için kullanıcıları nasıl yönlendirebilirim?
C# uygulamasında SaveFileDialog sınıfını kullanarak, dosya seçimi için bir arayüz kurabilir ve render edilen PDF'yi kaydetmek üzere seçilen yolu döndürebilirsiniz.
IronPDF, PDF manipülasyonu için hangi gelişmiş özellikleri sunar?
IronPDF, HTML'den PDF'ye dönüştürme, PDF birleştirme, PDF sayfalarını ayırma, metin ve görüntü çıkartma gibi gelişmiş özellikler sunarak .NET uygulamalarında PDF manipülasyonu için kapsamlı bir araç seti sağlar.
Ticari projelerde PDF oluşturma için IronPDF kullanımının bir maliyeti var mı?
IronPDF, deneme lisansı ile geliştirme amaçlı ücretsizdir. Ancak, ticari projeler için özel destek ve düzenli güncellemeler gibi avantajlar içeren ticari bir lisans gereklidir.
Iron Suite nedir ve geliştiricilere nasıl fayda sağlar?
Iron Suite, barkod oluşturma, Excel belge manipülasyonu ve PDF işleme gibi araçları içeren bir .NET kütüphaneleri koleksiyonudur. Uygulamalarında birden fazla işlevselliğe ihtiyaç duyan geliştiriciler için ekonomik bir çözüm sunar.
IronPDF, .NET 10 ile uyumlu mu ve C#'ta PDF kaydetme açısından ne gibi faydalar sağlar?
Evet — IronPDF, masaüstü, web ve çapraz platform proje türleri dahil olmak üzere tam .NET 10 desteği sunar. .NET 10 ile geliştirme, daha hızlı çalışma zamanı performansı, modern C# geliştirmelerine erişim ve platform özellikleriyle daha sıkı entegrasyon gibi geliştirmeler sunar. Bu, IronPDF'nin RenderHtmlAsPdf ve SaveAs yöntemlerini kullanarak PDF oluşturma ve kaydetme işlemlerini daha verimli hale getirir.




