广

ASP.NET

  • IOS开发
  • android开发
  • PHP编程
  • JavaScript
  • ASP.NET
  • ASP编程
  • JSP编程
  • Java编程
  • 易语言
  • Ruby编程
  • Perl编程
  • AJAX
  • 正则表达式
  • C语言
  • 编程开发

    ASP.NET上传图片并生成可带版权信息的缩略图

    2018-04-25 21:46:30 次阅读 稿源:互联网
    广告
    代码如下:

    <%@ Page Language="C#" ResponseEncoding="gb2312" %>
    <%@ import Namespace="System" %>
    <%@ import Namespace="System.IO" %>
    <%@ import Namespace="System.Drawing" %>
    <%@ import Namespace="System.Drawing.Imaging" %>
    <script runat="server"> 
      

    void Page_Load(Object sender, EventArgs e)
    {
    if(!Page.IsPostBack)
    {
    ImgPreview.Visible=false;
    }
    }
    void GetThumbnailImage(int width,int height,string strInfo,int left,int right)
    {
    string file="Uploads/"+uploadFile.PostedFile.FileName.Substring(uploadFile.PostedFile.FileName.LastIndexOf('//')+1);
    string newfile="Uploads/"+uploadFile.PostedFile.FileName.Substring(uploadFile.PostedFile.FileName.LastIndexOf('//')+1)+".jpg";
    string strAdd=strInfo;
    System.Drawing.Image oldimage = System.Drawing.Image.FromFile(Server.MapPath(file));
    System.Drawing.Image thumbnailImage =
    oldimage.GetThumbnailImage(width, height,new System.Drawing.Image.GetThumbnailImageAbort(ThumbnailCallback), IntPtr.Zero);
    Response.Clear();
    Bitmap output=new Bitmap(thumbnailImage);
    Graphics g=Graphics.FromImage(output);
    g.DrawString(strAdd,new Font("Courier New", 14),new SolidBrush(Color.Red),left,right);
    output.Save(Server.MapPath(newfile),System.Drawing.Imaging.ImageFormat.Jpeg);
    Response.ContentType = "image/gif";
    ImgPreview.Visible=true;
    ImgPreview.ImageUrl=newfile;
    }
    bool ThumbnailCallback()
    {
    return true;
    }

    void Button_Click(object sender, EventArgs e)
    {
    int width,height,left,right;
    string strAddInfo=txtAddInfo.Text;
    width=Int32.Parse(txtWidth.Text);
    height=Int32.Parse(txtHeight.Text);
    left=Int32.Parse(txtLeft.Text);
    right=Int32.Parse(txtRight.Text);
    if(!(uploadFile.PostedFile.ContentLength>0))
    {
    lblErrInfo.Text="没有选择文件";
    }
    else
    {

    string path = Server.MapPath("./Uploads/"+uploadFile.PostedFile.FileName.Substring(uploadFile.PostedFile.FileName.LastIndexOf('//')+1));
    if(File.Exists(path))
    {
    lblErrInfo.Text="已经有同名文件";
    }
    else
    {
    uploadFile.PostedFile.SaveAs(path);
    GetThumbnailImage(width,height,strAddInfo,left,right);
    }
    }
    }
    </script>
    <html>
    <head>
    </head>
    <body>
    <form method="post" enctype="multipart/form-data" runat="server">
    <p>
    <input id="uploadFile" type="file" runat="server" />
    <asp:Label id="lblErrInfo" runat="server" forecolor="Red"></asp:Label>
    </p>
    <p>
    width:<asp:TextBox id="txtWidth" runat="server" Width="40px">100</asp:TextBox>
    height:<asp:TextBox id="txtHeight" runat="server" Width="40px">150</asp:TextBox>

    </p>
    <p>
    添加信息:<asp:TextBox id="txtAddInfo" runat="server"> AspxBoy.Com</asp:TextBox>
    </p>
    <p>
    信息位置:left:<asp:TextBox id="txtLeft" runat="server" Width="40px">10</asp:TextBox>
    right:<asp:TextBox id="txtRight" runat="server" Width="40px">135</asp:TextBox>
    </p>
    <p>

    <input id="button" type="button" value="上传生成所略图" onServerClick="Button_Click" runat="server" />
    </p>
    <p><asp:Image id="ImgPreview" runat="server"></asp:Image>
    </p>
    <!-- Insert content here -->
    </form>
    </body>
    </html> 

    一起学吧部分文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与一起学吧进行文章共享合作。

    广告
    广告
    广告