檔案上傳加浮水印

來源:互聯網
上載者:User

標籤:return   filename   time   相對   畫布   引用   一個   tostring   上傳檔案   

在form表單寫的代碼(用戶端源碼)

 

‘FileUpload’控制項:選擇檔案用的,點擊可以選擇檔案
‘Image’控制項:展示圖片用的,所選的檔案在這裡展示

accept=".jpg,.png,.jpeg"圖片檔案加限制的屬性
<form id="form1" runat="server">        <asp:FileUpload ID="FileUpload1" runat="server" accept=".jpg,.png,.jpeg" />        <asp:Button ID="Button1" runat="server" Text="上傳" />        <asp:Image ID="Image1" runat="server" />    </form>

在後台服務端寫按鈕的點擊事件

‘FileUpload1.SaveAs(這裡面放的是一個路徑);’

建立一個檔案夾,把所有的上傳檔案都放在這個檔案夾裡

 

//判斷控制項是否選中,如果是非選中的話,直接‘return’走        if (!FileUpload1.HasFile) return;        //為了防止重名的問題,在前面加上上傳的時間        string path = "uploads/"+DateTime.Now.ToString("yyyyMMddHHssms")+FileUpload1.FileName;        //Server.MapPath()路徑映射,映射成絕對路徑,把誰映射?把‘path’映射        FileUpload1.SaveAs(Server.MapPath(path));        //上傳上之後,在介面上展示出來        Image1.ImageUrl = path;       //這裡是相對路徑

 

以上是檔案的基本上傳,還沒有加上浮水印

圖片浮水印:

using System.Drawing;   首先的先引用一個畫畫的類(命名空間)這樣可以使用各種畫畫的類,進行畫畫

然後,準備畫布:System.Drawing.Image img = System.Drawing.Image.FromStream(FileUpload1.FileContent);

畫畫是在哪裡畫 :Graphics g = Graphics.FromImage(img);

protected void Page_Load(object sender, EventArgs e)    {        Button1.Click += Button1_Click;    }    void Button1_Click(object sender, EventArgs e)    {        if (!FileUpload1.HasFile) return;        //畫布        System.Drawing.Image img = System.Drawing.Image.FromStream(FileUpload1.FileContent);        //在哪張圖上畫        Graphics g = Graphics.FromImage(img);        //要畫什麼東西(內容)        string s = "漢企奇點網路0504專用章";        //字型        Font f = new Font("黑體", 20);        //畫筆        Brush b = new SolidBrush(Color.Red);        //座標軸        PointF p = new PointF(10, 10);        //把參數放上        g.DrawString(s,f,b,p);        string path = "uploads/" + DateTime.Now.ToString("yyyyMMddHHmmssms") + FileUpload1.FileName;        img.Save(Server.MapPath(path));        Image1.ImageUrl = path;    }

 

如果是把兩張圖片進行疊加的話,需要改一個屬性

g.DrawString()改成  g.DrawImage()

//兩張圖片疊加        g.DrawImage(System.Drawing.Image.FromFile(Server.MapPath("uploads/222.png")), p);

 

檔案上傳加浮水印

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.