給圖片添加著作權資訊(C#)
來源:互聯網
上載者:User
給圖片添加著作權資訊(C#)
現在越來越多的網站都喜歡將使用者上傳的圖片加上網站的著作權資訊,不要以為那是用photoshop之類的圖片處理軟體加上去的,其實我們只要寫一小段代碼,就可以實現這個功能。
添加著作權資訊的原理其實挺簡單:通過圖片擷取Graphics類的對象,該類有一個DrawString()方法可以將資訊寫到圖片上,甚至還可以做出各種各樣的效果,如浮水印,背景透明等。最後儲存圖片即大功告成了。
我們建立一個windows應用程式項目,介面設計如圖:
添加著作權資訊的代碼如下:
//建立一張位元影像
Bitmap bitmap=new Bitmap(this.pictureBox2.Width,this.pictureBox2.Height,System.Drawing.Imaging.PixelFormat.Format24bppRgb);
//根據位元影像擷取畫布
Graphics g=Graphics.FromImage(bitmap);
//清空畫布並用透明色填充
g.Clear(Color.Transparent);
//將另一幅圖片畫到畫布上
g.DrawImage(this.pictureBox1.Image,0,0);
//寫著作權資訊到圖片上。
g.DrawString(this.textBox2.Text,new Font("黑體",15),new SolidBrush(Color.Red),new Rectangle(20,20,100,100));
//顯示
this.pictureBox2.Image=bitmap;
//儲存圖片
bitmap.Save("c:\\abc.bmp",System.Drawing.Imaging.ImageFormat.Bmp);
順便帖一下“選擇”按鈕的單擊事件程式:
private void button1_Click(object sender, System.EventArgs e)
{
if(this.openFileDialog1.ShowDialog()==DialogResult.OK)
{
if(this.openFileDialog1.FileName.Length==0)
{
MessageBox.Show("請選擇圖片","錯誤",MessageBoxButtons.OK,MessageBoxIcon.Error);
return;
}
this.textBox1.Text=this.openFileDialog1.FileName;
FileStream fs=new FileStream(this.openFileDialog1.FileName,FileMode.Open,FileAccess.Read);
try
{
this.pictureBox1.Image=Image.FromStream(fs);
}
catch(Exception)
{
MessageBox.Show("您選擇的檔案不是可識別的圖片格式","錯誤",MessageBoxButtons.OK,MessageBoxIcon.Error);
}
finally
{
fs.Close();
}
}
}