个人blog首页
高山放情歌, 艺馨友人和. 昨夜风与雨, 已作半池波.
给perfectboy留言
我的博客信息
访问量:4170
文章数:4
评论数:0
我的个人资料
我的最近文章
我的文章分类
日历
<<    2008年12月    >>
  1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31      
             
最新评论
我的好友
友情链接
最新博客
创建日期:
2007-6-3 20:26:30
修改日期:
2007-8-14 6:48:45
版权所有,未经作者许可,不得抄袭或转载,如有需要,可以与本人联系。
上传图片和显示文件 (2007-6-3 21:04:46)
上传文件
1. FileUpload控件加载文件。
2. 把文件字节根据要求的图片rect大小进行转换。
3. 通过TableAdapter写入数据库中。

显示图片
使用.ashx文件处理IHttpHandler实现发送文本及二进制数据的方法。
通过ashx调用HttpHandler类,免去了普通.aspx页面的控件解析以及页面处理的过程。这种文件适合于生成动态图片,生成动态文本等。 

示例代码

图片上传

aspx:            
 cs:
转换
public static byte[] MakeThumb(byte[] fullsize, int newwidth, int newheight)
    {
        Image iOriginal, iThumb;
        double scaleH, scaleW;

        Rectangle srcRect=new Rectangle();
        iOriginal = Image.FromStream(new MemoryStream(fullsize));
        scaleH = iOriginal.Height / newheight;
        scaleW = iOriginal.Width / newwidth;
        if (scaleH == scaleW)
        {
            srcRect.Width = iOriginal.Width;
            srcRect.Height = iOriginal.Height;
            srcRect.X = 0;
            srcRect.Y = 0;
        }
        else if ((scaleH) > (scaleW))
        {
            srcRect.Width = iOriginal.Width;
            srcRect.Height = Convert.ToInt32(newheight * scaleW);
            srcRect.X = 0;
            srcRect.Y = Convert.ToInt32((iOriginal.Height - srcRect.Height) / 2);
        }
        else
        {
            srcRect.Width = Convert.ToInt32(newwidth * scaleH);
            srcRect.Height = iOriginal.Height;
            srcRect.X = Convert.ToInt32((iOriginal.Width - srcRect.Width) / 2);
            srcRect.Y = 0;
        }
        iThumb = new Bitmap(newwidth, newheight);
        Graphics g = Graphics.FromImage(iThumb);
        g.DrawImage(iOriginal, new Rectangle(0, 0, newwidth, newheight), srcRect, GraphicsUnit.Pixel);
        MemoryStream m = new MemoryStream();
        iThumb.Save(m, System.Drawing.Imaging.ImageFormat.Jpeg);
        return m.GetBuffer();
    }
写入数据库
    protected void uploadimage_Click(object sender, System.EventArgs e)
    {
        byte[] thumbimage = ImageUtils.MakeThumb(newavatar.FileBytes, 69, 69);
        DataSetTableAdapters.MemberInfo1TableAdapter m = new DataSetTableAdapters.MemberInfo1TableAdapter();
        Guid memberid = (Guid)(Membership.GetUser().ProviderUserKey);
        Guid origid = memberid;
        m.Update(memberid, thumbimage, origid);
        avatarimage.ImageUrl = "AvatarImagefetch.ashx?Memberid=" + memberid.ToString();
    }


图片显示

前端aspx:
阅读数:1128
评论数:0
查看相关主题文章: 上传图片 文件
文章评论以下评论只代表个人观点,不代表台州批发市场网网商博客的观点或立场

发表评论请严格遵守相关法律,严禁恶意评论和垃圾评论

 登录名:
密码:
内 容:
验证码:



公司简介 | 招聘信息 | 服务条款 | 保护隐私权 | 帮助中心 | 免责条款 | 联系我们 | 意见反馈 | 友情链接 | 申请批发通
台州批发市场版权所有 2007-2008 服务热线:0576-82565056 浙ICP备08003961号
台州批发市场网在线交流: 89125800 89129800 34848303