c# GDI+ A.GDI、GDI、GUIhttps://blog.csdn.net/dust__/article/details/103675205https://blog.csdn.net/xunminwei0021/article/details/105003907https://www.cnblogs.com/HaoYangkun/p/14245560.htmlhttps://blog.csdn.net/weixin_42291376/article/details/127854736B.案例https://blog.csdn.net/wenchm/article/details/134717146https://www.toutiao.com/article/7232425582506557987/https://www.toutiao.com/article/7232056007227081254/https://www.toutiao.com/article/7231651555148153379/C.GDIAPI参考https://www.jb51.net/article/248117.htm1。什么是GDI什么是GDI? GDI和GDI区别 plusGDI图形设备接口英文全称Graphics Device Interface。编写图形程序时需要使用GDI。从程序设计的角度看GDI包括两个部分GDI对象和GDI函数。【GDI是使用硬件加速图形渲染的引擎】。GDI微软在Windows 2000以后操作系统中提供的新的图形设备接口。【GDI不是使用硬件加速的】而且GDI2.0比GDI更快。GDI主要提供三方面的服务a.二维矢量图形GDI提供了存储图形基元自身信息的类(或结构体)、存储图形基元绘制方式信息的类以及实际进行绘制的类。 几何图形b.图像处理大多数图片都难以划定为直线和曲线的集合无法使用二维矢量图形方式进行处理。因此GDI为我们提供了Bitmap、Image等类,它们可用于显示、操作和保存BMP、JPG、GIF等图像格式。c.文字显示GDI支持使用各种字体、字号和样式来显示文本。总结绘制基本的几何图形可以绘制复杂图片可以绘制文字矢量图形https://baike.baidu.com/item/二维计算机图形/4797297矢量图形SVGhttps://www.runoob.com/svg/svg-tutorial.htmlGDI比GDI的优越性主要展现在2个方面扩展了新功能变成更加简易灵活性能高。GDI 与 GDI 详细区别参考https://www.cnblogs.com/HaoYangkun/p/14245560.html2。什么是GUIGDI和GUI区别GUI是图形用户接口英文全称Graphics User Interface。指用户界面如窗体控件。 即UI界面层的相关接口。GDI是图形设备接口包含图形编程相关的对象和方法。详细参考https://www.cnblogs.com/HaoYangkun/p/14245560.html3。GDI 重要命令空间System.DrawingSystem.Drawing.TextSystem.Drawing.DesignSystem.Drawing.Drawing2DSystem.Drawing.ImagingSystem.Drawing.Printing4。GDI重要类创建图形的3种主流方法Graphics类画图方法都被包括在Graphics类中在画任何对象时我们首先要创建一个Graphics类实例这个实例相当于建立了一块画布有了画布才可以用各种画图方法进行绘图。创建图形的3种主流方法a.Graphics g e.Graphics; 注意e的类型是PaintEventArgs 最推荐的方法b.Graphics g this.CreateGraphics();或Graphics pg this.panel1.CreateGraphics(); 注意this是窗体对象大多数控件都有CreateGraphics()c.Graphics g Graphics.FromImage(img); 注意参数类型是Image或BitImage5。坐标系统在GDI中所采用的坐标系统与平时人们较常用的坐标系统不同主要差别在于一般的二维坐标系X轴与Y轴分别是往右往上递增左图而GDI所采用的坐标系X轴与Y轴则分别是往右往下递增右图。详细参考https://blog.csdn.net/weixin_42291376/article/details/1278547366。绘图的基本步骤a. 绘画的时机Paint事件b. 创建Graphics对象并配置它才有了绘制图形的能力。c. 使用Graphics对象提供的相关方法进行画图。画图时会依赖其他对象如Pen,Brush,Font,Color等7。各种绘图练习1。坦克大战https://www.cnblogs.com/misakayoucn/p/17617616.html2。验证码https://www.jb51.net/article/248127.htm3。条形码https://www.jb51.net/article/36291.htmhttps://www.cnblogs.com/soliang/p/180471294。文字任意旋转https://www.jb51.net/article/137976.htmhttps://www.jb51.net/article/55403.htmhttps://www.jb51.net/article/138077.htm5。GDI画圆柱体https://blog.csdn.net/qq_30725967/article/details/853355776。GDI把图片分割成九宫格https://www.jb51.net/article/235961.htm7。GDI裁切和缩放图像https://learn.microsoft.com/zh-cn/dotnet/desktop/winforms/advanced/cropping-and-scaling-images-in-gdi?viewnetframeworkdesktop-4.88。GDI实现可拖动的图形https://www.cnblogs.com/lesliexin/p/16554752.html下载字体https://font.chinaz.com/https://www.fonts.net.cn/发光文本public static void DrawGlowingString(Graphics graphics, string text, Font font, Color textColor, Color glowColor, float x, float y) { // 设置文本渲染质量 graphics.TextRenderingHint TextRenderingHint.AntiAlias; // 绘制发光效果 using (Brush glowBrush new SolidBrush(glowColor)) { // 在文本下方绘制发光可以通过调整Offset属性改变发光大小和方向 graphics.DrawString(text, font, glowBrush, x - 1, y 1); graphics.DrawString(text, font, glowBrush, x 1, y - 1); } // 绘制实色文本 using (Brush solidBrush new SolidBrush(textColor)) { graphics.DrawString(text, font, solidBrush, x, y); } }