List<double> labels = form.channelData2[kp.Key];
List<double> listY = kp.Value;
int labelSpan = 0;
if (form.currentMode2.display == DMAppConfig.Display.S30 || form.currentMode2.display == DMAppConfig.Display.S15 || form.currentMode2.display == DMAppConfig.Display.S10 || form.currentMode2.display == DMAppConfig.Display.S5)
labelSpan = form.maxSampleRate2;
else if (form.currentMode2.display == DMAppConfig.Display.S60 || form.currentMode2.display == DMAppConfig.Display.M2 || form.currentMode2.display == DMAppConfig.Display.M5 || form.currentMode2.display == DMAppConfig.Display.M10)
labelSpan = form.maxSampleRate2 * form.currentMode2.totalSeconds / Properties.Settings.Default.Spo2PulsePointDensity;
if (labels != null && labelSpan != 0 && labels.Count == listY.Count) //Spo2和pulse点标记的文字
{
int labelX = labelSpan / 2;

//重新设置画布,否则会出现坐标错乱的现象

while (labelX < labels.Count)
{
Graphics g3 = Graphics.FromImage(bmp);
g3.TextRenderingHint = System.Drawing.Text.TextRenderingHint.AntiAlias;

double label = labels[labelX];
int X0 = (int)(labelX * width * 1.0 / listY.Count);
int Y0 = (int)listY[labelX] - baseline;
string text = label.ToString("f0");
Font font = new Font("宋体", 8, FontStyle.Regular);
SizeF labelSize = g3.MeasureString(text, font);
int labelWidth = (int)(labelSize.Width * 1.2);
int labelHeight = (int)(labelSize.Height);
Rectangle rect = new Rectangle(X0 + offset, height - Y0 - 18, (int)labelWidth, (int)labelHeight);
g3.TranslateTransform(X0 + offset+ labelWidth/2, height - Y0 - 18+ labelHeight/2);
g3.RotateTransform(-45);
g3.DrawString(text, font, new SolidBrush(XMLSerializerManager.DeserializeColor(channel.lineColor)), 0,0, labelFormat);//绘制显示数字
//g2.DrawString(text, font, new SolidBrush(XMLSerializerManager.DeserializeColor(channel.lineColor)), rect, labelFormat);//绘制显示数字
labelX += labelSpan;
g3.Dispose();
}
}

Graphics绘制图形的更多相关文章

  1. Java 在PDF文档中绘制图形

    本篇文档将介绍通过Java编程在PDF文档中绘制图形的方法.包括绘制矩形.椭圆形.不规则多边形.线条.弧线.曲线.扇形等等.针对方法中提供的思路,也可以自行变换图形设计思路,如菱形.梯形或者组合图形等 ...

  2. C#如何消除绘制图形缩放时抖动,总结

    一.手动双缓冲 首先定义一个BitmapBitmap backBuffer = new Bitmap(画布宽度, 画布高度);然后获取这个Bitmap的GraphicsGraphics graphic ...

  3. 实现绘制图形的ToolBar

    给地图添加绘制图形的ToolBar还是有必要的,比较人性化的功能.图形的样式可以自己定制,也提供了朴实的默认样式.对 dojo 不太懂,出现了许许多多问题,真是蛋疼的一天啊.令人惊喜的是 ArcGis ...

  4. GDI+绘制图形和画刷填充图形

    GDI+可以再Windows窗体应用程序中以编程方式绘制图形等. 可以在VS里新建项目-Windows窗体应用程序-建一个窗体.首先引入命名空间using System.Drawing.Imaging ...

  5. iOS圆角view的Swift实现(利用Core Graphics绘制)

    iOS圆角view的Swift实现(利用Core Graphics绘制) 因为app的列表用用到了圆形图片的头像,所以去探究并思考了一下这个问题.首先这个问题有两个方向的解决方案: 把图片弄成圆形的. ...

  6. Java 窗口 绘制图形 #2

    写在前面: 高考结束咧,爽到啊,好耶 完善了Java 窗口 绘制图形 #1里面的程序 加入了缩放平移功能,给代码加了注释 1 package my_package; 2 3 import java.a ...

  7. java:绘制图形

    java绘图类:Graphics类 绘图是高级程序中必备的技术,在很多方面都能用到,如:绘制闪屏图片,背景图片和组件外观等. 1.Graphics类 Graphics类是所有图形上下文的抽象基类,Gr ...

  8. CSS 魔法系列:纯 CSS 绘制图形(心形、六边形等)

    <CSS 魔法系列>继续给大家带来 CSS 在网页中以及图形绘制中的使用.这篇文章给大家带来的是纯 CSS 绘制五角星.六角形.五边形.六边形.心形等等. 我们的网页因为 CSS 而呈现千 ...

  9. html5 Canvas绘制图形入门详解

    html5,这个应该就不需要多作介绍了,只要是开发人员应该都不会陌生.html5是「新兴」的网页技术标准,目前,除IE8及其以下版本的IE浏览器之外,几乎所有主流浏览器(FireFox.Chrome. ...

  10. html5 canvas 笔记一(基本用法与绘制图形)

    <canvas> 元素 <canvas id="tutorial" width="150" height="150"> ...

随机推荐

  1. iOS线程 - GCD在开发中的常见问题

    GCD 在开发中的常见问题 1 - 主线程中调用方法 ① 执行 testONE 后的输出结果:1  5  2  4  3 1 -(void)testONE{ 2 3 // 并发队列 4 dispatc ...

  2. 解析bean封装成BeanDefinition

    默认命名空间 1:parseDefaultElement 从代码中可以了解到默认的命名空间的一节节点主要是4种,import,alias,bean,beans private void parseDe ...

  3. 玩玩 Visual Studio Code 和 MSYS2

    注意:为了便于理解本文内容,您可能需要一些前置知识,例如命令行操作,编译器操作,路径操作,环境变量操作,vscode操作-- 众所周知 Visual Studio Code 是一个优秀的编辑器. 众所 ...

  4. https原理(三)双向实践(curl)

    接 https代理服务器(三)实践,实践双向ssl 本文采用客户端与服务端不同密钥对 1 mkcert myclient 生成客户端公钥 私钥 2 mkcert -pkcs12 myclient 也可 ...

  5. android studio 导出 release aar

  6. IDEA debug时拷贝数据 Evaluate Expression窗口

    今日份鸡汤:别人再好,也是别人.自己再不堪,也是自己,独一无二的自己.只要努力去做最好的自己,一生足矣.为自己的人生负责,为自己的梦想买单. 用IDEA调试时候经常需要拷贝变量值出来排查,特别是数据结 ...

  7. win10事件查看器出现10016错误的解决办法

    该错误一般会重复出现在事件查看器,严重的会导致系统卡死. 以解决下列错误为例,给出步骤: 注意记录用户(划掉的部分)及要添加的权限(本例为"本地激活"权限) 1.运行regedit ...

  8. ssh_remote_without_password

    2 machines, 1 called client , 1 called server , server need static ip address. client connects serve ...

  9. Windows Server 2012 R2安装.NET Framework4.7.1

    1.KB2919442 https://www.microsoft.com/zh-cn/download/confirmation.aspx?id=42153 2.clearcompressionfl ...

  10. Greg and Array CodeForces - 296C - 差分

    给定一个数列 \(a= { a_1,a_2,...,a_n }\) 以及 \(m\) 次操作,\(q\) 次查询. 其中第 \(i\) 次操作如同:\(l_i, r_i, d_i\),意指区间 \([ ...