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

推荐订阅源

J
Java Code Geeks
G
Google Developers Blog
有赞技术团队
有赞技术团队
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
Blog — PlanetScale
Blog — PlanetScale
罗磊的独立博客
博客园 - 聂微东
V
Visual Studio Blog
博客园_首页
D
DataBreaches.Net
腾讯CDC
I
InfoQ
F
Fortinet All Blogs
量子位
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
酷 壳 – CoolShell
酷 壳 – CoolShell
博客园 - 【当耐特】
Google DeepMind News
Google DeepMind News
人人都是产品经理
人人都是产品经理
云风的 BLOG
云风的 BLOG
月光博客
月光博客
Recent Announcements
Recent Announcements
MongoDB | Blog
MongoDB | Blog
C
Check Point Blog

博客园 - .net技術

makefile c语言难点 线程同步(转) stl学习(转帖2) stl 学习(转帖) visual C++ 6.0开发工具与调试 vc动态装载动态库 详细的MySQL C API CString,string,char*的综合比较 在Linux下安装和使用MySQL 人际关系的55个绝招 一个封装的socket类 一个linux下c++程序 一个网络扫描程序 VC数字图像处理编程 ASCII 一些函数 防盗链IHttpHandler(转自垃圾猪) 回车改变焦点
按比例显示图片大小
.net技術 · 2005-11-16 · via 博客园 - .net技術

ShowImage.aspx显示页面DataList模板项html:

<ItemTemplate>
       <asp:HyperLink id=HyperLink1 Target="_blank"

NavigateUrl='<%# DataBinder.Eval(Container, "DataItem.filename", "images/{0}") %>' Runat="server">
        <asp:Image id=Image2 runat="server" ImageUrl='<%# "GetThumbnail.aspx?filename=" + Server.UrlEncode(DataBinder.Eval(Container, "DataItem.filename").ToString()) %>' AlternateText='<%# "文件名称:" + DataBinder.Eval(Container, "DataItem.filename") + "\n文件尺寸:" + DataBinder.Eval(Container, "DataItem.size") + " bytes" %>'>
        </asp:Image>
       </asp:HyperLink>
       <asp:Button id="Button1" onclick="HHH" runat="server" Text="Button"></asp:Button>
 </ItemTemplate>

图片处理页面GetThumbnail.aspx代码:
  const int MaxLength=150;  //显示图片最大长度

  private void Page_Load(object sender, System.EventArgs e)
  {
   if (Request.QueryString["filename"] != null)
   {
    //取得原图
    string filename=Request.QueryString["filename"];
    Bitmap bmpOld= new Bitmap(Server.MapPath("images/" + filename));

    //计算缩小比例
    double d1;
    if (bmpOld.Height>bmpOld.Width)
    d1=(double)(MaxLength/(double)bmpOld.Height);     
     else
     d1=(double)(MaxLength/(double)bmpOld.Width);

    //产生缩图
    Bitmap bmpThumb= new Bitmap(bmpOld,(int)(bmpOld.Width*d1),(int)(bmpOld.Height*d1));

    // 清除缓冲
    Response.Clear();
    //生成图片
    bmpThumb.Save(Response.OutputStream, ImageFormat.Jpeg);
    Response.End();
    //释放资源
    bmpThumb.Dispose();
    bmpOld.Dispose();
   }
  }