HttpHandler 동적 생성 이미지

7818 단어 handler
1. 서버에 그림을 되돌려 달라고 요청하면 브라우저는 서비스에 이 그림이 존재하는지 모르고 요청만 보내고 요청을 받고 그림을 표시합니다.
string path = context.Server.MapPath("~/1.jpg");// 

// 

using (Stream instream = File.OpenRead(path))

{

    instream.CopyTo(context.Response.OutputStream);

}

2. 서버에 동적으로 jpeg 그림을 만듭니다.
string name = context.Request["name"];//name 

using (Bitmap bmp = new Bitmap(500, 500))// 500*500 

using (Graphics g = Graphics.FromImage(bmp))// 

{

    g.DrawString(name, new Font(FontFamily.GenericSerif, 30), Brushes.Red, 0, 0);//Font 

    g.DrawEllipse(Pens.Green, 100, 100, 100, 100);

    bmp.Save(context.Response.OutputStream, ImageFormat.Jpeg);//             

} 

3. 시스템 정보 얻기:
context.Response.ContentType = "image/jpeg";

using (Bitmap bmp = new Bitmap(500, 200))// 500*500 

using (Graphics g = Graphics.FromImage(bmp))// 

using (Font font = new Font(FontFamily.GenericSerif, 30))

{

    HttpRequest request = context.Request;

    g.DrawString("IP:" + request.UserHostAddress, font, Brushes.Red, 0, 0);

    g.DrawString(" :" + request.Browser.Browser + request.Browser.Version, font, Brushes.Red, 0, 50);

    g.DrawString(" :" + request.Browser.Platform, font, Brushes.Red, 0, 100);

    bmp.Save(context.Response.OutputStream, ImageFormat.Jpeg);// 

}

4. 동적 창설 계집애증:
context.Response.ContentType = "image/jpeg";

string name = context.Request["name"];

string imgFullPath = context.Server.MapPath("~/PaoNiuZheng.jpg");

using (Image bmp = Bitmap.FromFile(imgFullPath))

using (Graphics g = Graphics.FromImage(bmp))// 

using (Font font1 = new Font(FontFamily.GenericSerif, 12))

using (Font font2 = new Font(FontFamily.GenericSerif, 5))

{

    {

        g.DrawString(name, font1, Brushes.Black, 125, 220);//Font 

        g.DrawString(name, font2, Brushes.Black, 309, 50);//Font 

        bmp.Save(context.Response.OutputStream, ImageFormat.Jpeg);// 

    }

}

5. 동적 생성 네 자리 숫자의 검증 코드
Random name = new Random();

int r = name.Next(999, 9999);

using (Bitmap bmp = new Bitmap(100, 50))// 500*500 

using (Graphics g = Graphics.FromImage(bmp))// 

{

    g.DrawString(r.ToString(), new Font(FontFamily.GenericSerif, 30), Brushes.Red, 0, 0);//Font 

    g.DrawEllipse(Pens.Green, 100, 100, 100, 100);

    bmp.Save(context.Response.OutputStream, ImageFormat.Jpeg);//             

} 

좋은 웹페이지 즐겨찾기