c# Desktop

Form Sayfasındaki Bilgileri Word ve PDF Belgesi Olarak Gösterme

Ofis programları içinde yer alan ve kelime işlemci programları arasında en popüler olan Word programı, bir çok ortam yardımıyla rahatlıkla çalıştırılabilir ve elde edilen bilgiler belge olarak saklanabilir. Bu uygulamamızda Spire kütüphanesini kullanarak Word belgesi oluşturacağız. Adı, Soyadı, Adresi, Açıklama bilgilerini Form sayfasında oluşturup elde edilen bilgileri Word belgesine aktaracağız.

Visual Studio 2022 programını açalım. Yeni proje oluşturalım. İsmini CreateWordDocument olarak belirleyelim. Aşağıdaki form tasarımını yapalım.

Projeye Spire.Doc kütüphanesini ekleyelim. Bunun için Manage NuGet Packages paketinden ilgili kütüphaneyi yükleyelim.  Form sayfasında kullanılacak temel değişkenleri tanımlayalım.

        //örnek dosya klasörü
        string samplePath = Application.StartupPath + 
                            Path.DirectorySeparatorChar + "Taslak.docx";
        //Word belgesi klasörü
        string docxPath = Application.StartupPath + 
                          Path.DirectorySeparatorChar + "Sonuc.docx";

        //Word belgesi dökümanı oluştur
        Document document = null;

Burada Taslak.docx dosyasını aşağıdaki gibi oluşturalım.

Şimdi form sayfasında yer alan bilgileri Dictionary dizisine aktaralım. Bunun Dictionary tipinde bir GetReplaceDictionary fonksiyon tanımlayacağız.

        Dictionary<string, string> GetReplaceDictionary()
        {
            Dictionary<string, string> replaceDict = new 
                                             Dictionary<string, string>();
            replaceDict.Add("#firstname#", textBox1.Text.Trim());
            replaceDict.Add("#lastname#", textBox2.Text.Trim());
            replaceDict.Add("#address#", textBox3.Text.Trim());
            replaceDict.Add("#description#", textBox4.Text.Trim());

            return replaceDict;
        }

Şimdi Gönder butonuna ait kodları yazalım.

        private void button1_Click(object sender, EventArgs e)
        {
            //Word nesnesinden bir kopya oluştur
            document = new Document();
            document.LoadFromFile(samplePath);
            //String değerleri diziye aktar
            Dictionary<string, string> dictReplace = GetReplaceDictionary();
            //Metinleri ekle
            foreach (KeyValuePair<string, string> kvp in dictReplace)
            {
                document.Replace(kvp.Key, kvp.Value, true, true);
            }
            //Dökümanı oluştur
            document.SaveToFile(docxPath, FileFormat.Docx);
            MessageBox.Show("İşlemler tamamlandı.", "Döküman İşleme", 
                        MessageBoxButtons.OK, MessageBoxIcon.Information);
            document.Close();
        }

Projeyi kaydedip çalıştıralım. Form bilgilerini dolduralım. Gönder butonuna basalım. Sonuc.docx dosyası oluşturulur. Şimdi oluşturlan bu dosyanın açılması için Belgeyi Aç butonunu oluşturalım.

        private void button2_Click(object sender, EventArgs e)
        {
            try
            {
                System.Diagnostics.Process.Start(docxPath);
            }
            catch { }
        }

Belgeyi Aç butonuna bastığınızda Sonuc.docx belgesi açılır. Şimdi de bu belgeyi pdf olarak kaydedelim. Projenin başında gerekli değişkeni tanımlayalım.

        string pdfPath = Application.StartupPath + 
                         Path.DirectorySeparatorChar + "Result.pdf";

Daha sonra Gönder butonunda alt satıra şunu ekleyelim.

            document.SaveToFile(pdfPath, FileFormat.PDF);

Projeyi kaydedip çalıştırdığımızda Result.pdf belgesinin oluştuğunu görürsünüz. Oluşturulan pdf belgesini görmek için form sayfasına 1 tane daha button ekleyelim. Click olayına aşağıdaki kodları yazalım.

            try
            {
                System.Diagnostics.Process.Start(pdfPath);
            }
            catch { }

 


Etiketler
c# word document write read 
İlgili Makaleler
c# Console Uygulamalarında ReadKey Metoduyla Klavye Tuşlarını Kontrol Etme
Yıkıcı Metotlar (Destructors)
Sayısal Loto Çekilişini Yapan c# Uygulaması
Kredi Kartı Taksitlendirme İşlemini Yapan c# Uygulaması
Kaçan Buton Oyununu Yapan c# Uygulaması
Yazdırma İletişim Kutusu (PrintDialog)
C# Uygulamalarında HashMap Dizi Oluşturma
C# Uygulamalarında Dictionary Dizi Oluşturma
c# Form Uygulamalarında Ekranın Genişliğini ve Yüksekliğini Bulma
Rastgele Seçilen Bir Sayıyı Basamaklarına Ayıran, Basamak Değerini ve Sayı Değerini Bulan c# Console Uygulaması
Konsol Ekranında Kod Yazma ve Çalıştırma
LINQ - Gruplama (Grouping) Örnekleri
Veri Girişi Maskeleme (MaskedTextBox)
Panel Üzerinde Serbest Çizim Yapan c# Form Uygulaması
Veri Girişi Doğrulama (Input Validation)
c# Console Uygulamalarında Ping Nasıl Kullanılır, Ping Atma
C# Programlama Dilinde Veri Tipleri
Form Sayfalarında Ayrıntılı ListBox Kullanımı
Form Üzerine Satranç Tahtası Yapan c# Uygulaması
Belirtilen Sayı Kadar Yıldız Oluşturan c# Form Uygulaması

Yorum Ekle
   
Kötü İyi