C#監控文件夾並主動給圖片文件取水印的辦法。本站提示廣大學習愛好者:(C#監控文件夾並主動給圖片文件取水印的辦法)文章只能為提供參考,不一定能成為您想要的結果。以下是C#監控文件夾並主動給圖片文件取水印的辦法正文
本文實例講述了C#監控文件夾並主動給圖片文件取水印的辦法。分享給年夜家供年夜家參考。詳細剖析以下:
小我私心的原因,常常寫一些博客之類的文章,因為看到收集下面很多多少同志轉載後不標明出處,所以專程寫了這麼一個小法式,這個小法式的功效是當我在頁面上經由過程QQ截圖以後,把截到的圖片保留到一個指定的途徑,然後對象主動幫我把圖片下面加下水印。
上面是全體代碼:
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 System.IO; namespace FolderWatcher { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private static string text = "http://www.cnblogs.com/zhuzhenyu"; private static string path = @"E:\FolderWatcher"; private void button1_Click(object sender, EventArgs e) { if (!string.IsNullOrEmpty(this.textBox1.Text)) { path = this.textBox1.Text; } if (!string.IsNullOrEmpty(this.textBox2.Text)) { text = this.textBox2.Text; } WatcherStrat(path, "*.*"); } private static void WatcherStrat(string path, string filter) { FileSystemWatcher watcher = new FileSystemWatcher(); watcher.Path = path; watcher.Filter = filter; watcher.Created += new FileSystemEventHandler(OnProcess); watcher.EnableRaisingEvents = true; watcher.NotifyFilter = NotifyFilters.Attributes | NotifyFilters.CreationTime | NotifyFilters.DirectoryName | NotifyFilters.FileName | NotifyFilters.LastAccess | NotifyFilters.LastWrite | NotifyFilters.Security | NotifyFilters.Size; watcher.IncludeSubdirectories = true; } private static void OnProcess(object source, FileSystemEventArgs e) { if (e.ChangeType == WatcherChangeTypes.Created) { OnCreated(source, e); } } private static void OnCreated(object source, FileSystemEventArgs e) { if (e.FullPath.IndexOf("_new.") < 0) { FinePic(e.FullPath, text, e.FullPath.WordStr(".", "_new."), new Font("宋體", 15, FontStyle.Bold)); } } /// <summary> /// 圖片水印 /// </summary> /// <param name="FileName">源文件途徑</param> /// <param name="wText">水印文字</param> /// <param name="savePath">保留途徑</param> /// <param name="font">字體款式</param> public static void FinePic(string FileName, string wText, string savePath, Font font) { Bitmap bmp = new Bitmap(FileName); System.Drawing.Graphics g = System.Drawing.Graphics.FromImage(bmp); g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality; g.DrawString(wText, font, new SolidBrush(Color.FromArgb(70, Color.Red)), 60, bmp.Height - 120);//加水印 bmp.Save(savePath, System.Drawing.Imaging.ImageFormat.Jpeg); } } }
來看一下後果
這裡的代碼異常簡略,年夜家不要噴我
我是一只辛苦耕作的螞蟻
願望本文所述對年夜家的C#法式設計有所贊助。