Merhaba arkadaslar,
Bu yazimizda yine örnek bir C# uygulamasi üzerinden basit anlamda bir word dokümani nasil olusturulabilecegini anlatmaya çalisacagim.
Evvelâ "Microsoft Word 12.0 Object Library" referansini WindowsForm projemize eklememiz gerekiyor. Bunun için; Solution Explorer penceresindeki References üzerinde veya Projenizin adina sag tiklayip "Add Reference..." seçenegini tiklayalim. Açilacak pencerede COMsekmesini seçip buradan "Microsoft Word 12.0 Object Library" referansini bularak OK tusuna basalim. Böylece projemiz için gerekli olan COM referansini projemize eklemis olacagiz. Referans’i ekledikten sonra ise artik Word için gerekli asagidaki kütüphaneyi projemize dahil edebiliriz demektir;
using Microsoft.Office.Interop.Word;
Simdi Projemize ve kodlara geçelim o halde;
Projemizde yalnizca bir adet buton olacak ve tiklandiginda istedigimiz dokümani Word’e aktaracak. Ayni zamanda da masaüstüne kaydedecek.
Kodlar söyle;
// Basit Word Belgesi Olusturma | www.yazilimcik.com
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using Microsoft.Office.Interop.Word;
// Basit Word Belgesi Olusturma | www.yazilimcik.com
namespace Word_Dokumani_Olusturma__Yazilimcik_Com
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
// Word Dosyasi Masaüstüne "Word_Dosyasi.doc" Adiyla Kaydedilecek:
string path = Environment.GetFolderPath(Environment.SpecialFolder.Desktop) + "\\Word_Dosyasi.doc"; // Word Dosyasi’nin Yolu:
ApplicationClass wordUygulama = new ApplicationClass();
private void btnWordOlustur_Click(object sender, EventArgs e)
{
wordKaydet(System.Windows.Forms.Application.StartupPath + "\\Word_Dosyasi.doc", path);
btnWordOlustur.Enabled = false;
btnWordOlustur.BackColor = Color.Gray;
MessageBox.Show("’Word_Dosyasi’ Adli Word Dosyasi Masaüstü’ne Basariyla Kaydedildi..", "Bilgi:", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
private void wordKaydet(object fileName, object saveas)
{
object missing = System.Reflection.Missing.Value;
Document document = wordUygulama.Documents.Add(ref missing, ref missing, ref missing, ref missing);
// Yeni dokuman olusturma:
wordUygulama.Visible = true;
document.Activate();
wordUygulama.Selection.ParagraphFormat.Alignment = WdParagraphAlignment.wdAlignParagraphCenter;
// Word Dokümani’nda Yazi Ortalama:
wordUygulama.Selection.Font.Bold = (int)WdConstants.wdToggle;
// Yazi Font’u Kalin Olsun:
wordUygulama.Selection.TypeText("Jean Valjean ekmek çaldigi için bes yil kürek cezasina çarptirilmis, birkaç kez kaçmaya kalkistigi için cezasi agirlasmis, on dokuz yil hapiste kalmistir. Çok kuvvetli bir insan olan Jean Valjean, hapiste iyi duygularini kaybetmis gibidir. Hapisten çikinca, mahkûm oldugunu gösteren belge yüzünden herkes ona kötü davranir. Bir piskopos onu evine alir, o ise evden gümüs takimlari çalar, fakat yakalanir. Piskopos, sikayetçi olmaz, üstelik ona iki de gümüs samdan hediye eder; onlardan elde edecegi parayi namuslu adam olma yolunda harcamasini ister.Son olay, Jean Valjean’in yasaminda bir dönüm noktasi olur..\n");
// Yazi’yi Word’e Aktar:
wordUygulama.Selection.ParagraphFormat.Alignment = WdParagraphAlignment.wdAlignParagraphRight;
wordUygulama.Selection.TypeText("Yazilim ve Veritabani Hakkinda Hersey\nwww.yazilimcik.com");
// Yazi’yi Word’e Aktar:
// Paragraf Formati:
Range paragraf = document.Paragraphs[1].Range;
paragraf.Font.Name = "Times New Roman";
paragraf.Font.Size = 11f;
paragraf.Font.Italic = 0;
paragraf.Font.Color = WdColor.wdColorDarkBlue;
//Heading formatinda olmasini istiyorsaniz asagidaki alanlari da kullanabilirsiniz:
//object prop = WdBuiltinStyle.wdStyleHeading1; // "Heading 1";
//paragraf.ParagraphFormat.set_Style(ref prop);
// Word’u Kaydet:
document.SaveAs(ref saveas, ref missing, ref missing, ref missing,
ref missing, ref missing, ref missing, ref missing,
ref missing, ref missing, ref missing, ref missing,
ref missing, ref missing, ref missing, ref missing);
}
}
}
// Basit Word Belgesi Olusturma | www.yazilimcik.com