C# GDI+文字画图 添加任意角度文字(文字旋转是中心旋转,角度顺时针为正)
public Bitmap AddText(string DrawText)
{
Bitmap bmp = new Bitmap(350, 300);
Graphics g = Graphics.FromImage(bmp);
Rectangle rect = new Rectangle(0, 0, bmp.Width, bmp.Height);//定义矩形,参数为起点横纵坐标以及其长和宽
//单色填充
//背景色
SolidBrush b1 = new SolidBrush(Color.FromArgb(10, Color.White));//定义单色画刷
g.FillRectangle(b1, rect);//填充这个矩形
//设置文本输出质量
g.TextRenderingHint = TextRenderingHint.ClearTypeGridFit;
g.SmoothingMode = SmoothingMode.AntiAlias;
Font newFont = new Font("微软雅黑", 100);
//文字颜色
SolidBrush colorBrush = new SolidBrush(Color.FromArgb(30, Color.Gray));
//g.ResetTransform();
//调整文字位置
SizeF sf = g.MeasureString(DrawText, newFont);
g.TranslateTransform(0 + sf.Width / 2, 20 + sf.Height / 2);//旋转
g.RotateTransform(-30);//旋转角度
g.TranslateTransform(-(40 + sf.Width / 2), -(0 + sf.Height / 2));//旋转复位
//绘制前景
g.DrawString(DrawText, newFont, colorBrush, new PointF(0, 0));
bmp.MakeTransparent();//背景设置透明
string path = @"D:\工作资料\YJY\JTCOD.png";
bmp.Save(path, System.Drawing.Imaging.ImageFormat.Png);
return bmp;
}
C# 使用 GDI+ 实现添加中心旋转(任意角度)的文字
https://www.cnblogs.com/dandelion-drq/p/csharp_use_gdiplus_to_rotate_text.html
c# gdi设置画刷透明
https://www.cnblogs.com/y114113/p/6946035.html
C# GDI+文字画图 添加任意角度文字(文字旋转是中心旋转,角度顺时针为正)的更多相关文章
- C# 使用 GDI+ 实现添加中心旋转(任意角度)的文字
这篇文章是 GDI+ 总结系列的第三篇,如果对 GDI+ 的基础使用不熟悉的朋友可以先看第一篇文章<C# 使用 GDI+ 画图>. 需求 需求是要实现给图片添加任意角度旋转的文字,文字的旋 ...
- C# 使用 GDI+ 给图片添加文字,并使文字自适应矩形区域
需求 需求是要做一个编辑文字的页面.用户在网页端写文字,文字区域是个矩形框,用户可以通过下方的拖动条调节文字大小. 如下图: 提交数据的时候前端传文字区域的左上角和右下角定位给后台.因为前端的字体大小 ...
- Asp.net 上传图片添加半透明图片或者文字水印的方法
主要用到System.Drawing 命名空间下的相关类,如Brush.Image.Bitmap.Graphics等等类 Image类可以从图片文件创建Image的实例,Bitmap可以从文件也可以从 ...
- Echarts学习记录——如何给x轴文字标签添加事件
Echarts学习记录——如何给x轴文字标签添加事件 关键属性 axisLabel下属性clickable:true 并给图表添加单击事件 根据返回值判断点击的是哪里 感觉自己的方法有点变扭,有更好办 ...
- VS2010 MFC 使用GDI+给图片添加汉字
1.配置GDI+ VS2010自带GDI+,直接使用. (1)首先要添加头文件和库 #pragma comment( lib, "gdiplus.lib" ) #include & ...
- UIButton图片文字控件位置自定义(图片居右文字居左、图片居中文字居中、图片居左文字消失等)
在开发中经常会碰到需要对按钮中的图片文字位置做调整的需求.第一种方式是通过设置按钮中图片文字的偏移量.通过方法setTitleEdgeInsets和setImageEdgeInsets实现 代码如下: ...
- C#+OpenGL+FreeType显示3D文字(2) - 用GLSL+VBO绘制文字
C#+OpenGL+FreeType显示3D文字(2) - 用GLSL+VBO绘制文字 +BIT祝威+悄悄在此留下版了个权的信息说: 上一篇得到了字形贴图及其位置字典(可导出为XML).本篇就利用此贴 ...
- php如何清除html格式并去除文字中的空格然后截取文字
PHP如何清除html格式并去除文字中的空格然后截取文字,详细分享一下处理方法(顺便对PHP清除HTML字符串的函数做了一个小结): htmlspecialchars 将特殊字元转成 HTML格式语法 ...
- 向ArcGIS的ToolBarControl中添加任意的windows组建的方法[转]
向ArcGIS的ToolBarControl中添加任意的windows组建的方法[转] Link: http://www.cnblogs.com/mymhj/archive/2012/10/12/27 ...
- 【ABAP系列】SAP ABAP ALV中的TOP_OF_PAGE添加任意图标
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[MM系列]SAP ABAP ALV中的TOP_ ...
随机推荐
- datasnap的回调广播
感觉中的datasnap千孔百疮,到xe10已经具备冲击成千上万用户并发的能力了.应该放心用于项目实战了.补课研究10.1 datasnap开发手册. 用到的方法: (1)TDBXCallback机制 ...
- argo-cd基于Kubernetes的声明式持续部署
argo-cd基于Kubernetes的声明式持续部署 什么是argo-cd? Argo CD是一个基于Kubernetes的声明式GitOps持续交付工具. 为什么CD ? 应用程序定义.配置和环境 ...
- HTTP 分段下载
GET /user_crc.bin HTTP/1.1 Host: mnif.cn Range: bytes=0-1000
- Python科学计算系列5—导数
1.一元函数的导数 例1:求下列函数的导数 例2:求下列函数的50阶导数 代码如下: from sympy import * x = symbols('x') f1 = diff(tan(x)) f2 ...
- JMeter提取多个变量值总结
- java基础之线程池
一.线程池:提前创建多个线程存放到集合容器中,其中的线程可以反复使用,减少资源的开销 作用就是:线程执行完一个任务,并不被销毁,而是可以继续执行其他的任务 使用线程池中线程对象的步骤: 1. 创建线程 ...
- 关于:js使用$.parseJSON字符串转json对象报错Uncaught SyntaxError- Unexpected token o in JSON at position 1
今天使用js使用$.parseJSON字符串转json对象报错Uncaught SyntaxError- Unexpected token o in JSON at position 1,一直找不到原 ...
- php 根据时间设置多少小时 ,前天,昨天,多少月,多少年
public static function formatTime($time){ if (is_int($time)) { $time = intval($time); } elseif ($tim ...
- PHP实现文件上传下载实例详细讲解
一.上传原理与配置 1.1 原理 将客户端文件上传到服务器端,再将服务器端的文件(临时文件)移动到指定目录即可. 1.2 客户端配置 所需:表单页面(选择上传文件): 具体而言:发送方式为POST,添 ...
- 【代码】Python3|用Python PIL压缩图片至指定大小,并且不自动旋转
代码主体是GPT帮我写的,我觉得这个功能非常实用. 解决自动旋转问题参考:一行代码解决PIL/OpenCV读取图片出现自动旋转的问题,增加一行代码image = ImageOps.exif_trans ...