asp.net实现C#绘制太极图的方法
本文实例讲述了ASP。网实现C#绘制太极图的方法。分享给大家供大家参考。具体如下:
成品图如下所示:
超文本标记语言页面:
注意设置:
复制代码代码如下:ContentType='Image/Jpeg '
复制代码代码如下:%@页面语言=' c# ' AutoEventWireup=' true ' CodeFile=' TaiJiTu。aspx。cs ' Inherits=' TaiJiTu '内容类型=' Image/Jpeg ' %!DOCTYPE html html xmlns=' http://www .w3。org/1999/XHTML ' head runat=' server ' meta http-equiv=' Content-Type ' Content=' text/html;charset=utf-8 '/title/title/head body表单id=' form 1 ' runat=' server ' div/div/form/body/html
后台代码:
复制代码代码如下:使用系统;使用系统。绘图;使用系统。绘图。绘图2D;使用系统。绘图。成像;公共部分类泰吉图:系统网络。用户界面。第{页私有编码器我的编码器私有EncoderParameter myEncoderParameter;私有EncoderParameters myEncoderParameters;受保护的无效页面_加载(对象发送方,EventArgs e){ int imgWidth=400;//图象尺寸int眼半径=IMgwidth/20;//鱼眼半径int头直径=IMgwidth/2;//鱼头直径位图图像=新位图(imgWidth,imgWidth);图像SetResolution(300,300);图形图形=图形FromImage(图像);//设置图像质量图形。合成质量=合成质量。高质量;图形。平滑模式=平滑模式。抗锯齿;图形。插值模式=插值模式。高质量双三次曲线;
//底色填充为白色画笔白色=新的SolidBrush(颜色。白色);图形fill矩形(白色,新矩形(0,0,imgWidth,imgWidth));
画笔蓝色=新的SolidBrush(颜色。蓝色);//定义蓝色笔刷画笔红色=新的SolidBrush(颜色。红色);//定义红色笔刷
//整个圆形填充蓝色图形FillPie(蓝色,0,0,imgWidth,imgWidth,0,360);//定义右边的路径(红色部分)图形路径redPath=新图形路径();//初始化路径红色路径.AddArc(0,0,imgWidth,imgWidth,0,-180);红色路径.添加弧(0,头部直径/2,头部直径,头部直径,0,-180);红色路径.添加弧(头部直径,头部直径/2,头部直径,头部直径,0,180);//填充右边部分图形FillPath(红色,红色路径);//填充红色眼睛图形FillPie(红色,新矩形(头直径/2 -眼睛半径,头直径-眼睛半径,眼睛半径* 2,眼睛半径* 2),0,360);//填充蓝色眼睛图形。填充(蓝色,新矩形(头部直径头部直径/2 -眼睛半径,头部直径-眼睛半径,眼睛半径* 2,眼睛半径* 2),0,360);
图形dispose();
//写入到反应输出流中去,普通质量//图像。保存(响应。输出流,图像格式. JPEG);
//修改图片保存质量ImageCodecInfo myImageCodecInfo=GetEncoder(ImageFormat .JPEG);编码器。质量;myEncoderParameters=new EncoderParameters(1);//图片质量等级myEncoderParameter=new EncoderParameter(myEncoder,100 l);我的命令参数param[0]=myEncoderParameter;//使用指定参数输出图像。保存(响应. OutputStream,myImageCodecInfo,myEncoderParameters);}私有静态ImageCodecInfo GetEncoder(ImageFormat格式){ ImageCodecInfo[],编解码器=ImageCodecInfo .GetImageEncoders();foreach(编解码器中的ImageCodecInfo编解码器){ if(编解码器FormatID==format .guid){ 0返回编解码器;} }返回null} }
希望本文所述对大家的C#程序设计有所帮助。
版权声明:asp.net实现C#绘制太极图的方法是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。