c#使用GDI进行简单的绘图
https://www.2cto.com/database/201805/749421.html
https://zhidao.baidu.com/question/107832895.html
private
void
button2_Click(object sender, EventArgs e)
{
Bitmap image =
new
Bitmap(
200
,
200
);
Graphics g = Graphics.FromImage(image);
//使绘图质量最高,即消除锯齿
g.SmoothingMode = SmoothingMode.AntiAlias;
g.InterpolationMode = InterpolationMode.HighQualityBicubic;
g.CompositingQuality = CompositingQuality.HighQuality;
Pen p =
new
Pen(Color.Blue,
2
);
//定义了一个蓝色,宽度为的画笔
g.DrawString(
"字符串"
,
new
Font(
"宋体"
,
10
),
new
SolidBrush(Color.Blue),
new
PointF(
10
,
10
));
g.DrawLine(p,
0
,
0
,
200
,
200
);
//在画板上画直线
g.DrawRectangle(p,
0
,
0
,
200
,
200
);
//在画板上画矩形
g.DrawEllipse(p,
0
,
0
,
200
,
200
);
//在画板上画椭圆
//保存图片
image.Save(@
"c:\1.jpg"
);
#region 显示
//pictureBox1.Image = (Image)image;
//pictureBox1.Image.Save(@"c:\1.jpg");
#endregion
}
Graphics g = this.CreateGraphics();
Font font = new Font("宋体", 9f);
PointF pointF = new PointF(10, 10);
SizeF sizeF = g.MeasureString("Hello World!", font);
g.FillRectangle(Brushes.White, new RectangleF(pointF, sizeF));
g.DrawString("Hello World!", font, Brushes.Black, pointF);
g.Dispose();
font.Dispose();
Graphics g = Graphics.FromImage(image);
Font font = new Font("黑体", 26.25f, FontStyle.Bold);
SizeF sizeF = g.MeasureString(lxtmStr, font);
//sizeF.Width, sizeF.Height
image = new Bitmap(Convert.ToInt32(sizeF.Width), Convert.ToInt32(sizeF.Height));
g = Graphics.FromImage(image);
//使绘图质量最高,即消除锯齿
g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.AntiAlias;
g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic;
g.CompositingQuality = System.Drawing.Drawing2D.CompositingQuality.HighQuality;
PointF pointF = new PointF(0, 0);
if ((dsShoptemp.Tables[0].Rows[0]["STEP"].ObjToInt() % 2) == 1)
{
g.FillRectangle(Brushes.White, new RectangleF(pointF, sizeF));
g.DrawString(lxtmStr, font, Brushes.Black, pointF);
}
else
{
g.FillRectangle(Brushes.Black, new RectangleF(pointF, sizeF));
g.DrawString(lxtmStr, font, Brushes.White, pointF);
}
item["路线条码"] = image;
c#使用GDI进行简单的绘图的更多相关文章
- 学习笔记:利用GDI+生成简单的验证码图片
学习笔记:利用GDI+生成简单的验证码图片 /// <summary> /// 单击图片时切换图片 /// </summary> /// <param name=&quo ...
- (转载)C# GDI+ 画简单的图形:直线、矩形、扇形等
GDI+是一种绘图装置接口, 当拖动窗体是,窗体发生移动,window默认为从窗体移动到另一个地方,先发生擦除后再重新画一个窗体: 而我们自己动手画的图(如下面的线),不会重新画:在属性中,Paint ...
- VC GDI双缓冲机制绘图防屏幕闪烁实现步骤
在OnDraw(CDC* pDC) 中添加如下代码 CDC MemDC; //首先定义一个显示设备对象 CBitmap MemBitmap;//定义一个位图对象 //随后建立与屏幕显示兼容的内存显示设 ...
- Qt双缓冲机制:实现一个简单的绘图工具(纯代码实现)
http://blog.csdn.net/rl529014/article/details/51658350
- GDI+绘制简单图形
#include <windows.h>#include <gdiplus.h>using namespace Gdiplus;#pragma comment(lib, &qu ...
- GDI+实现双缓冲绘图方法一
private void Form5_MouseMove(object sender, MouseEventArgs e) { int intOX = rectDrawArea.X; int intO ...
- 一个用于提取简体中文字符串中省,市和区并能够进行映射,检验和简单绘图的python模块
简介 一个用于提取简体中文字符串中省,市和区并能够进行映射,检验和简单绘图的python模块. 举个例子: ["徐汇区虹漕路461号58号楼5楼", "泉州市洛江区万安塘 ...
- C# GDI+学习笔记1
前言 本文是学习C# GDI+系列的第一篇文章,简单的介绍了GDI+的一些基本绘图内容,比较粗糙.但本文主要是让大家简单的回顾一下GDI+的基本概念.本篇文章的参考代码请在此下载 . GDIPTes ...
- Windows 窗体的.Net 框架绘图技术
当编写一个典型的Windows 窗体程序时,窗体和控件的绘制.效果等操作是不需要特别加以考虑的.这是为什么呢?因为通过使用 .Net 框架,开发人员可以拖动一系列的控件到窗体上,并书写一些简单的与事件 ...
随机推荐
- 主外键 设置 on update cascade 和on delete cascade 的区别
on update cascade 和on delete cascade 的区别 这是数据库外键定义的一个可选项,用来设置当主键表中的被参考列的数据发生变化时,外键表中响应字段的变换规则的.updat ...
- System.Runtime.Serialization.cs
ylbtech-System.Runtime.Serialization.cs 允许对象控制其自己的序列化和反序列化过程. 1.返回顶部 1. #region 程序集 mscorlib, Versio ...
- openresty开发系列21--lua的模块
openresty开发系列21--lua的模块 从lua5.1开始,Lua 加入了标准的模块管理机制,Lua 的模块是由变量.函数等已知元素组成的 table, 因此创建一个模块很简单,就是创建一个 ...
- 导出swagger2生成的文档
百度了好多篇用法,没法用.特此记录一下 一.下载项目 下载https://github.com/Swagger2Markup/spring-swagger2markup-demo下的项目,保存,注意文 ...
- 数据分析入门——pandas之Series
一.介绍 Pandas是一个开源的,BSD许可的库(基于numpy),为Python编程语言提供高性能,易于使用的数据结构和数据分析工具. 官方中文文档:https://www.pypandas.cn ...
- Python3入门(十三)——常用内置模块之集合模块collections
1.namedtuple 主要用来定义一种数据类型:它具有Tuple的不变性,而且又能通过属性来访问 例如定义坐标: from collections import namedtuple Point ...
- 全面系统Python3入门+进阶_汇总
https://coding.imooc.com/class/136.html#Anchor 全面系统Python3入门+进阶-1-1 导学 全面系统Python3入门+进阶-1-2 Python的特 ...
- RabbitMQ 入门教程(PHP版) 第四部分:路由(Routing)
路由(Routing) 在前面的第三部分教程中,我们实现了一个简单的日志系统.可以把日志消息广播给多个接收者. 本篇教程中我们打算新增一个功能——使得它能够只订阅消息的一个字集.例如,我们只需要把严重 ...
- 让pc端代码适用移动端——<meta name="viewport"
写的代码,在pc端运行正常,在移动端就很小很小,需要放大.这时候可引入这个标签 @参考博客 用法,在<head></head>中添加<meta name="vi ...
- 报错:java.lang.ClassNotFoundException: org.codehaus.jackson.map.JsonMappingException
报错背景: 执行hdfs-mysql的job任务的时候报错. 报错现象: Exception has occurred during processing command Exception: org ...