asp.net繼承IHttpHandler接口實現(xiàn)給網(wǎng)站圖片添加水印功能實例
本文實例講述了asp.net繼承IHttpHandler接口實現(xiàn)給網(wǎng)站圖片添加水印功能。分享給大家供大家參考,具體如下:
先展示圖片效果:
1. 在App_Code下添加類文件,命名為ImageSY 文件內(nèi)容如下
public class ImageSY : IHttpHandler { public ImageSY() { // //TODO: 在此處添加構(gòu)造函數(shù)邏輯 // } #region IHttpHandler 成員 public bool IsReusable { get { return true; } } public void ProcessRequest(HttpContext context) { //獲得請求的物理圖片路徑 string imagePath = context.Request.PhysicalPath; System.Drawing.Image image = null; if (File.Exists(imagePath)) { //定義水印文字 string text = "本圖片來至我的網(wǎng)站"; //定義水印文字字體大小 int fontSize = 22; //水印文字字體 Font font = new Font("宋體", fontSize); //根據(jù)圖片物理地址加載圖片 image = System.Drawing.Image.FromFile(imagePath); Graphics g = Graphics.FromImage(image); //獲取要繪制水印文字所需要的顯示區(qū)域大小 SizeF size = g.MeasureString(text, font); if (size.Width > image.Width || size.Height > image.Height) { } else { Brush brush = Brushes.Red; g.DrawString(text, font, brush, image.Width - size.Width, image.Height - size.Height); g.Dispose(); } } else { } image.Save(context.Response.OutputStream, ImageFormat.Jpeg); } #endregion }
2. 配置WebConfig,添加Location新節(jié)點
<location path="images"> <system.web> <httpHandlers> <!---對jpg文件添加水印--> <add verb="*" type="ImageSY" path="*.jpg"/> <add verb="*" type="ImageSY" path="*.gif"/> <add verb="*" type="ImageSY" path="*.bmp"/> </httpHandlers> </system.web> </location>
3. 測試,新建aspx頁面,顯示圖片,水印就會自動加上了
更多關于asp.net相關內(nèi)容感興趣的讀者可查看本站專題:《asp.net操作json技巧總結(jié)》、《asp.net字符串操作技巧匯總》、《asp.net操作XML技巧總結(jié)》、《asp.net文件操作技巧匯總》、《asp.net ajax技巧總結(jié)專題》及《asp.net緩存操作技巧總結(jié)》。
希望本文所述對大家asp.net程序設計有所幫助。
- 如何在ASP.NET Core中給上傳圖片功能添加水印實例代碼
- ASP.NET百度Ueditor編輯器實現(xiàn)上傳圖片添加水印效果
- Asp.net開發(fā)之webform圖片水印和圖片驗證碼的實現(xiàn)方法
- ASP.NET簡單好用功能齊全圖片上傳工具類(水印、縮略圖、裁剪等)
- Asp.net簡單實現(xiàn)給圖片增加文字水印
- asp.net如何在圖片上加水印文字具體實現(xiàn)
- asp.net上傳圖片并作處理水印與縮略圖的實例代碼
- ASP.NET 圖片加水印防盜鏈實現(xiàn)代碼
- asp.net中上傳圖片文件實現(xiàn)防偽圖片水印并寫入數(shù)據(jù)庫
- ASP.NET實現(xiàn)圖片自動添加水印
相關文章
國產(chǎn)化之Arm64?CPU+銀河麒麟系統(tǒng)安裝.NetCore的步驟詳解
這篇文章主要介紹了國產(chǎn)化之Arm64?CPU+銀河麒麟系統(tǒng)安裝.NetCore,這里就以ARM架構(gòu)舉例,其它CPU平臺的安裝過程都一樣,要下載的包不同而已,感興趣的朋友跟隨小編一起看看吧2022-03-03HTTP 錯誤 500.19 - Internal Server Error解決辦法詳解
這篇文章主要介紹了HTTP 錯誤 500.19 - Internal Server Error解決辦法詳解的相關資料,這里對錯誤進行了詳細分析及說明該如何解決,需要的朋友可以參考下2016-11-11ASP.NET開源導入導出庫Magicodes.IE完成Csv導入導出的方法
這篇文章主要介紹了ASP.NET開源導入導出庫Magicodes.IE完成Csv導入導出的方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-06-06SqlDataReader生成動態(tài)Lambda表達式
這篇文章主要介紹了SqlDataReader生成動態(tài)Lambda表達式,需要的朋友可以參考下2017-04-04asp.net Forms身份驗證和基于角色的權(quán)限訪問
Forms身份驗證用來判斷是否合法用戶,當用戶合法后,再通過用戶的角色決定能訪問的頁面。2009-09-09