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 框架,开发人员可以拖动一系列的控件到窗体上,并书写一些简单的与事件 ...
随机推荐
- QEMU支持的网络模式
网络是现代计算机系统不可或缺的一部分,QEMU也对虚拟机提供丰富的网络支持.qemu-kvm中主要给客户机提供了如下4种不同模式的网络. (1)基于网桥(Bridge)的虚拟网卡 (2)基于NAT(N ...
- linux内核的0号进程是在哪里创建的?
1. 0号进程即为idle进程或swapper进程,也就是空闲进程 2. 0号进程特点 idle是一个进程,其pid为0. 主处理器上的idle由原始进程(pid=0)演变而来.从处理器上的idle由 ...
- flutter DropdownButton使用
import 'package:flutter/material.dart'; class MyStatefulWidget extends StatefulWidget { MyStatefulWi ...
- axios和drf结合的增删改查
增删改查 查: 前端实例: mounted() { //获取所有数据 // var Base_url = 'http://paas.bktst.sh.sgcc.com.cn/t/files-check ...
- CSS3 Transition 过渡
CSS3属性中有关于制作动画的三个属性:Transform,Transition,Animation: Transition:对元素某个属性或多个属性的变化,进行控制(时间等),类似flash的补间动 ...
- js 判断字符串是否为JSON格式
function isJSON(str) { if (typeof str == 'string') { try { var obj=JSON.parse(str); if(typeof obj == ...
- android基础---->传感器的使用
现在每部Android 手机里面都会内置有许多的传感器,它们能够监测到各种发生在手机上的物理事件,而我们只要灵活运用这些事件就可以编写出很多好玩的应用程序.今天我们开始简单的传感器使用的学习. 目录导 ...
- 高性能最终一致性框架Ray之基本功能篇
一.Event(事件) Event是Actor产生的记录状态变化的日志,由StateId(状态Id),UID(幂等性控制),TypeCode(事件类型),Data(事件数据),Version(事件版本 ...
- 配置jdbc问题 mysql与IDEA
1.新建lib文件夹,将jar文件导入 2在structure中添加jar文件 3设置url时需要设置时区: import java.sql.Connection;import java.sql.Dr ...
- urls 视图层
urls.py 路由层 路由与视图函数对应关系 >>> 路由层 URL配置(URLconf)就像Django 所支撑网站的目录.它的本质是URL与要为该URL调用的视图函数之间的映射 ...