惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

U
Unit 42
Blog — PlanetScale
Blog — PlanetScale
H
Help Net Security
The GitHub Blog
The GitHub Blog
博客园 - Franky
酷 壳 – CoolShell
酷 壳 – CoolShell
Recent Announcements
Recent Announcements
量子位
aimingoo的专栏
aimingoo的专栏
大猫的无限游戏
大猫的无限游戏
博客园 - 叶小钗
Microsoft Azure Blog
Microsoft Azure Blog
Martin Fowler
Martin Fowler
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
A
About on SuperTechFans
T
Tailwind CSS Blog
V
V2EX
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
B
Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
S
SegmentFault 最新的问题
G
Google Developers Blog
M
MIT News - Artificial intelligence

博客园 - King0502

网址收藏 如何使网页变黑白色(灰色) aspnet_merge.exe”已退出,代码为1的错误的解决方法(另类) C#编程中的66个好习惯,你有多少个? 遍历Request.QueryString的所有参数与值 如何调试触发器 Sql Server触发器的原理及应用技巧 远程桌面问题,连接后马上断开,并显示“远程计算机已结束连接” 关于网站的推广方法 DOS命令如何删除文件和文件夹 如何将网站提交给百度和谷歌 Discuz!NT 2.0问题大全 系统进程详解 检索 COM 类工厂中 CLSID 为 {00024500-0000-0000-C000-000000000046} 的组件时失败,原因是出现以下错误: 80070005。 试图运行项目时出错:无法在Web服务器上启动调试,您不具备调试此应用程序的权限. 有电视大家一起看:局域网内电视卡共享 关闭Windows 2000/XP/2003默认共享 VB开发摘记 MSDE相关
上传函数(全集)
King0502 · 2008-07-20 · via 博客园 - King0502

        /// <summary>
        /// 文件上传,适用于.net2.0
        /// </summary>
        /// <param name="file">上传域FileUpload控件</param>
        /// <param name="SavePath">图片存储路径,默认为upload/</param>
  /// <param name="WatermarkImgFile">水印图片地址,留空则无水印</param>
        /// <returns>返回文件名</returns>
        public string FileUp(System.Web.UI.WebControls.FileUpload file,string SavePath, string WatermarkImgFile)
        {
            if (file.HasFile)
            {
                string picName = file.PostedFile.FileName;
                int pos = picName.LastIndexOf(".");
                string excName = picName.Substring(pos);
                kin.Web.CommTool commtool = new kin.Web.CommTool();
                string newName = kin.Web.CommTool.RandomFileName() + excName;

    string phyicPath = HttpContext.Current.Server.MapPath(kin.Web.CommTool.GetAppPath + SavePath);
    //如果目录不存在,则创建
    if (Directory.Exists(phyicPath) == false)
                    Directory.CreateDirectory(phyicPath);
                file.PostedFile.SaveAs(phyicPath + newName);

    if (WatermarkImgFile == "")
    {
                    //无水印,直接返回
                    return newName;
                }

                System.Drawing.Image image = System.Drawing.Image.FromFile(phyicPath + newName);
    //if (WatermarkType == 1)
    //{
     ////加文字水印,注意,这里的代码和以下加图片水印的代码不能共存
     //Graphics g = Graphics.FromImage(image);
     //g.DrawImage(image, 0, 0, image.Width, image.Height);
     //Font f = new Font("Verdana", 12);
     //Brush b = new SolidBrush(Color.White);
     //string addText = WatermarkString;
     //g.DrawString(addText, f, b, 10, 10);
     //g.Dispose();
    //}
    //else if (WatermarkType == 2) {
    //加图片水印
    System.Drawing.Image copyImage = System.Drawing.Image.FromFile(HttpContext.Current.Server.MapPath(kin.Web.CommTool.GetAppPath + WatermarkImgFile));
    Graphics g = Graphics.FromImage(image);
    g.DrawImage(copyImage, new Rectangle(image.Width - copyImage.Width, image.Height - copyImage.Height, copyImage.Width, copyImage.Height), 0, 0, copyImage.Width, copyImage.Height, GraphicsUnit.Pixel);
    g.Dispose();
    //}

                //保存加水印过后的图片,删除原始图片
                string newName2 = kin.Web.CommTool.RandomFileName() + excName;
                image.Save(phyicPath + newName2);
                image.Dispose();
                File.Delete(phyicPath + newName);
                return newName2;
            }
            else
            {
                return "";
            }
        }