Rabu, 24 Desember 2008

Menyalin teks di textbox ke clipboard sebagai gambar

intinya sih mudah..

1. Mengubah teks di textbox menjadi gambar
2. Mengeset gambar itu ke dalam clipboard

biasanya ini berguna kalo mau bikin program yang mau format tulisannya nggak berubah - berubah.. misalnya untuk teks - teks yang pake unicode (contohnya : bahasa arab)

1. Mengubah teks di textbox menjadi gambar

private Bitmap CreateBitmap(string tImageText)
private Bitmap CreateBitmapImage(string sImageText)
{
Bitmap bmpImage = new Bitmap(1, 1);
int iWidth = 0;
int iHeight = 0;

Font MyFont = new Font("Verdana", 24, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point);

StringFormat strFormat = new StringFormat();
strFormat.Alignment = StringAlignment.Far;

Graphics MyGraphics = Graphics.FromImage(bmpImage);

iWidth = (int)(MyGraphics.MeasureString(sImageText, MyFont, 1000).Width * 1.25);
iHeight = (int)MyGraphics.MeasureString(sImageText, MyFont).Height * 5;

bmpImage = new Bitmap(bmpImage, new Size(iWidth, iHeight));

Rectangle rect = new Rectangle(0, 0, iWidth, iHeight);

MyGraphics = Graphics.FromImage(bmpImage);
MyGraphics.Clear(Color.White);
MyGraphics.TextRenderingHint = TextRenderingHint.AntiAlias;
MyGraphics.DrawString(sImageText, MyFont, new SolidBrush(Color.Black), rect, strFormat);
MyGraphics.Flush();

return bmpImage;
}


2. Mengeset gambar itu ke dalam clipboard

//Dimisalkan textbox yang akan dicopy adalah textBox1
Clipboard.SetImage(CreateBitmapImage(temp));

Setelah gambar itu masuk ke dalam clipboard, anda dapat mempastenya dimanapun.. di word misalnya atau di paint...

Selamat mencoba.. ^_^

Tidak ada komentar: