⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 webfunction.cs

📁 小E单班同学录系统
💻 CS
📖 第 1 页 / 共 2 页
字号:
using System;
using System.Drawing;
using System.Drawing.Imaging;
using System.IO;
/// <summary>
/// WebFunction 的摘要说明
/// </summary>
public class WebFunction
{
    public static void AdminLogin()
    {
         LoginCheck("Admin","Main.aspx");
    }
    public static void Login()
    {
        LoginCheck("ID","Default.aspx");
    }
    static void LoginCheck(string sessionName,string url)
    {
        if (System.Web.HttpContext.Current.Session[sessionName] == null)
        {
            System.Web.HttpContext.Current.Response.Write("<script type=\"text/javascript\">alert(\"对不起!您还没有登陆!请登陆!\");location=\"" + url + "\"</script>"); 
            System.Web.HttpContext.Current.Response.End();
        }
    }
    public static void HaveMessage(System.Web.UI.WebControls.HyperLink hlMessage)
    {
        if (System.Web.HttpContext.Current.Session["ID"] != null)
        {
            MyPage db = new MyPage();
            db.dbh.Reset();
            db.dbh.sqlCommand = "select MessageCount from Users where ID=@ID";
            db.dbh.AddFieldParameters("ID",System.Web.HttpContext.Current.Session["ID"]);
            db.dbh.GetDataReader();
            if (db.dbh.dr.Read())
            {
                if ((int)db.dbh.dr[0] > 0)
                {
                    hlMessage.ForeColor = System.Drawing.Color.Red;
                    hlMessage.Text = (int)db.dbh.dr[0] + "条信息";
                    hlMessage.NavigateUrl = "SMS.aspx?Menu=Look";
                }
            }
            db.dbh.dr.Close();
            db.dbh.Dispose();
        }
    }
    public static System.Collections.ArrayList _sessionList = System.Collections.ArrayList.Synchronized(new System.Collections.ArrayList());
    public static void MemberAdd(object obj)
    {
        for (int i = 0; i < _sessionList.Count; i++)
        {
            if (obj.ToString() == _sessionList[i].ToString())
                return;
        }
        _sessionList.Add(obj);
    }
    public static void MemberDec(object obj)
    {
        _sessionList.Remove(obj);
    }
    public static int MemberCount()
    {
        return _sessionList.Count;
    }
}



/// <summary>
/// UpFile 的摘要说明
/// </summary>
public class UpFile
{
	public UpFile()
	{
		//
		// TODO: 在此处添加构造函数逻辑
		//
	}

    public static string upImage(string upPath,string FileName, string FileFrontName)
    {
        String fileExtension = System.IO.Path.GetExtension(FileName).ToLower();
        String[] alloweExtensions ={ ".jpg", ".gif" };
        for (int i = 0; i < alloweExtensions.Length; i++)
        {
            if (fileExtension == alloweExtensions[i])
            {
                return upPath + FileFrontName + fileExtension;
            }
        }
        return null;
    }

    /// <summary>
    /// 生成缩略图
    /// </summary>
    /// <param name="fileStream">文件流 null为使用源图路径</param>
    /// <param name="originalImagePath">源图路径(相对路径) null为使用文件流</param>
    /// <param name="thumbnailPath">缩略图路径(相对路径)</param>
    /// <param name="width">缩略图宽度</param>
    /// <param name="height">缩略图高度</param>
    /// <param name="mode">生成缩略图的方式 HW/指定高宽缩放 W/指定宽,高按比例 H/指定高,宽按比例 Cut/指定高宽裁减(不变形)</param>    
    public static void MakeThumbnail(System.IO.Stream fileStream, string originalImagePath, string thumbnailPath, int width, int height, string mode)
    {
        System.Drawing.Image originalImage;
        if (fileStream == null)
        {
            originalImage = System.Drawing.Image.FromFile(System.Web.HttpContext.Current.Server.MapPath(originalImagePath));
        }
        else
        {
            originalImage = System.Drawing.Image.FromStream(fileStream, true);
        }
        int towidth = width;
        int toheight = height;

        int x = 0;
        int y = 0;
        int ow = originalImage.Width;
        int oh = originalImage.Height;

        switch (mode)
        {
            case "HW"://指定高宽缩放(可能变形)                
                break;
            case "W"://指定宽,高按比例                    
                toheight = originalImage.Height * width / originalImage.Width;
                break;
            case "H"://指定高,宽按比例
                towidth = originalImage.Width * height / originalImage.Height;
                break;
            case "Cut"://指定高宽裁减(不变形)                
                if ((double)originalImage.Width / (double)originalImage.Height > (double)towidth / (double)toheight)
                {
                    oh = originalImage.Height;
                    ow = originalImage.Height * towidth / toheight;
                    y = 0;
                    x = (originalImage.Width - ow) / 2;
                }
                else
                {
                    ow = originalImage.Width;
                    oh = originalImage.Width * height / towidth;
                    x = 0;
                    y = (originalImage.Height - oh) / 2;
                }
                break;
            default:
                break;
        }

        //新建一个bmp图片
        System.Drawing.Image bitmap = new System.Drawing.Bitmap(towidth, toheight);

        //新建一个画板
        Graphics g = System.Drawing.Graphics.FromImage(bitmap);

        //设置高质量插值法
        g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.High;

        //设置高质量,低速度呈现平滑程度
        g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality;

        //清空画布并以透明背景色填充
        g.Clear(Color.Transparent);

        //在指定位置并且按指定大小绘制原图片的指定部分
        g.DrawImage(originalImage, new Rectangle(0, 0, towidth, toheight),
            new Rectangle(x, y, ow, oh),
            GraphicsUnit.Pixel);
        try
        {
            //以jpg格式保存缩略图
            bitmap.Save(System.Web.HttpContext.Current.Server.MapPath(thumbnailPath), System.Drawing.Imaging.ImageFormat.Jpeg);
        }
        catch (System.Exception e)
        {
            throw e;
        }
        finally
        {
            originalImage.Dispose();
            bitmap.Dispose();
            g.Dispose();
        }
    }
}
namespace Leehom
{
    /// <summary>
    /// UpFile 的摘要说明
    /// </summary>
    public class UpFile
    {
        public string WatermarkText = "";
        public string WatermarkPosition = System.Configuration.ConfigurationManager.AppSettings["WaterImgPosition"].ToString();
        public string Watermarkimgpath = System.Configuration.ConfigurationManager.AppSettings["WaterImgMarkPath"].ToString();
        public string imgPath = System.Configuration.ConfigurationManager.AppSettings["UpImgPath"].ToString();
        public string ImgLink = "";
        public string WatermarkType = "T";
        public bool ShowWatermark = false;
        public bool MiniImg = true;
        public int MiniImgW = Convert.ToInt32(System.Configuration.ConfigurationManager.AppSettings["SmallImgW"]);
        public int MiniImgH = Convert.ToInt32(System.Configuration.ConfigurationManager.AppSettings["SmallImgH"]);
        private string ImgPath = System.Web.HttpContext.Current.Server.MapPath(System.Configuration.ConfigurationManager.AppSettings["UpImgPath"].ToString());
        private string ThumbPath = System.Web.HttpContext.Current.Server.MapPath("~\\Thumbs\\" + System.Configuration.ConfigurationManager.AppSettings["UpImgPath"].ToString());
        public UpFile()
        {
            //
            // TODO: 在此处添加构造函数逻辑
            //

        }
        /**/
        /// <summary>
        /// 上传图片代码
        /// </summary>
        /// <param name="image_file">HtmlInputFile控件</param>
        /// <param name="ImgPath">存放的文件夹绝对位置</param>
        /// <param name="ImgLink">生成的图片的名称带后缀</param>
        /// <returns></returns>
        public bool UpPic(System.Web.UI.HtmlControls.HtmlInputFile image_file)
        {
            String fileExtension = System.IO.Path.GetExtension(image_file.PostedFile.FileName).ToLower();
            String[] alloweExtensions ={ ".jpg", ".gif" };
            for (int i = 0; i < alloweExtensions.Length; i++)
            {
                if (fileExtension == alloweExtensions[i])
                {

                    if (image_file.PostedFile.ContentLength > Convert.ToInt32(System.Configuration.ConfigurationSettings.AppSettings["UpFileSize"]))
                    {
                        return false;
                    }
                    if (fileExtension == ".gif")
                    {
                        ShowWatermark = false;
                    }

                    try
                    {
                        if (!System.IO.Directory.Exists(ImgPath) && !System.IO.Directory.Exists(ThumbPath))
                        {
                            System.IO.Directory.CreateDirectory(ImgPath);
                            System.IO.Directory.CreateDirectory("Thumbs\\" + ImgPath);
                        }
                        //生成缩略图
                        //如果显示水印
                        if (ShowWatermark)
                        {
                            image_file.PostedFile.SaveAs(ImgPath + "old_" + ImgLink);
                            //加水印
                            addWaterMark((ImgPath + "old_" + ImgLink), (ImgPath + ImgLink));
                        }
                        else
                        {
                            image_file.PostedFile.SaveAs(ImgPath + ImgLink);
                        }
                        if (MiniImg)
                        {
                            GreateMiniImage((ImgPath + ImgLink), (ThumbPath + ImgLink), MiniImgW, MiniImgH, "Cut");
                        }
                        return true;
                    }

                    catch (Exception e)
                    {
                        LeeHom.Error.Record("上传图片", e.ToString());
                        return false;
                    }
                    finally
                    {
                        System.IO.File.Delete(ImgPath + "old_" + ImgLink);
                    }
                }
            }
            return false;
        }

        /// <summary>
        /// 添加图片水印
        /// </summary>
        /// <param name="oldpath">原图片绝对地址</param>
        /// <param name="newpath">新图片放置的绝对地址</param>
        /// <param name="sy">加水吗?</param>
        ///  <param name="type">什么水 I 图 T 文字</param>

        public void addWaterMark(string oldpath, string newpath)
        {
            System.Drawing.Image image = System.Drawing.Image.FromFile(oldpath);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -