天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

C# 給站點(diǎn)指定位置的某種格式的圖片添加水印

復(fù)制代碼 代碼如下:
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Drawing;
namespace Chen
{
/// <summary>
/// HandlerImageOpener 的摘要說(shuō)明
/// </summary>
public class HandlerImageOpener : IHttpHandler
{
public HandlerImageOpener()
{
//
// TODO: 在此處添加構(gòu)造函數(shù)邏輯
//
}
private string _path = "";
/// <summary>
/// 水印圖片路徑
/// </summary>
public string PngPath
{
get
{
if (_path == "")
{
_path = System.Web.HttpContext.Current.Server.MapPath(ConfigurationManager.AppSettings["WatermarkedImagePath"]);
}
return _path;
}
}
/// <summary>
/// 為圖片加水印并寫(xiě)入到Response.OutputStream
/// </summary>
/// <param name="hc">上下文對(duì)象</param>
public void GetNewBitMap(HttpContext hc)
{
// 加載原圖片
//System.Web.HttpContext.Current.Response.Write(System.Drawing.Image.FromFile(hc.Request.PhysicalPath));
//System.Web.HttpContext.Current.Response.End();
Bitmap oldBmp = new Bitmap(System.Drawing.Image.FromFile(hc.Request.PhysicalPath));
int newWidth = oldBmp.Width;
int newHeight = oldBmp.Height;
if (oldBmp != null)
{
// 綁定畫(huà)板
Graphics grap = Graphics.FromImage(oldBmp);
// 加載水印圖片
Bitmap bt = new Bitmap(PngPath);
// 水印位置控制
int pH = GetNewPoint(newHeight, bt.Height, true);
int pW = GetNewPoint(newWidth, bt.Width, false);
if (newHeight < pH * 8)
pH = pH / 2;
if (newWidth < pW)
pW = pW / 2 / 2;
int pX = newHeight - pH;
int pY = newWidth - pW - 3;
// 添加水印
grap.DrawImage(bt, pY, pX, pW, pH);
// 寫(xiě)入到輸出流
oldBmp.Save(hc.Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg);
}
}
// 控制寬高
private int GetNewPoint(int oldP, int newP, bool isW)
{
int p = 4;
if (isW)
{
p = 16;
}
if (oldP < (newP * p))
{
newP /= 2;
if (oldP < (newP * p))
{
GetNewPoint(oldP, newP, isW);
}
}
return newP;
}
#region IHttpHandler 成員
bool IHttpHandler.IsReusable
{
get { return true; }
}
void IHttpHandler.ProcessRequest(HttpContext context)
{
GetNewBitMap(context);
}
#endregion
}
}
生成.dll文件后在web.config 中配置
<!--水印圖片路徑-->
<appSettings>
<add key="WatermarkedImagePath" value="~/logo.gif"/>
</appSettings>
<!--引用處理函數(shù) path為需要加水印圖片的目錄-->
<httpHandlers>
<add type="Chen.HandlerImageOpener, Chen" verb="*" path="image/*.jpg,image/*.gif,image/*.png,image/*.bmp" />
</httpHandlers>

AspNet技術(shù)C# 給站點(diǎn)指定位置的某種格式的圖片添加水印,轉(zhuǎn)載需保留來(lái)源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 国产偷国产偷亚州清高APP | 欧美同志高清vivoeso | 小寡妇好紧进去了好大看视频 | 99久久就热视频精品草 | 女教师跟黑人男朋友激情过后 | 美女与男人对肌免费网站 | sao虎影院桃红视频在线观看 | RUN AWAY无删减全集动漫 | 日本乱子伦一区二区三区 | 抽插内射高潮呻吟爆乳 | 日本高清免费一本视频在线观看 | 中国农民真实bbwbbw | 农民下乡在线观看3 | 国产精品九九九久久九九 | 色婷婷狠狠97成为人免费 | 第一福利在线永久视频 | chinese情侣自拍啪hd | 午夜伦4480yy妇女久久 | 国产精品爆乳尤物99精品 | 清晨紧湿爱运动h高h | 久久天堂网 | 成人在线免费看片 | 国产综合无码一区二区色蜜蜜 | 国产精品久久国产三级国不卡顿 | 影音先锋色小姐 | 国产哺乳期奶水avav | 国产精品婷婷久青青原 | 全肉高H短篇合集 | 97精品在线| 第一次玩老妇真实经历 | 99国产这里只有精品视频 | 久久亚洲国产成人影院 | 国产综合无码一区二区色蜜蜜 | 亚洲视频第二页 | 狠狠色综合久久丁香婷婷 | 无套内射无矿码免费看黄 | 日本无翼恶漫画大全优优漫画 | 亚洲乱码在线卡一卡二卡新区 | 欧美亚洲精品真实在线 | 国产偷抇久久精品A片蜜臀A | 青春草国产成人精品久久 |