C#实现在图片上斜着写字
最近公司要搞微信活动页面,要实现图片上可以写自己名字的功能,于是就查了一下怎么实现,下面贴一下代码备忘,希望大家也能用到;
我是在控制台应用程序里进行试验的。
using (Image bitmap = Image.FromFile("../../123.jpg")) { using (Graphics g = Graphics.FromImage(bitmap)) { g.ResetTransform();//重置图像 g.TranslateTransform(bitmap.Width / 2, bitmap.Height / 2);//设置旋转中心 g.RotateTransform(53);//旋转53度 顺时针 g.TextRenderingHint = System.Drawing.Text.TextRenderingHint.AntiAlias;//指定文本呈现的质量 解决文字锯齿问题 g.DrawString("zzg", new Font("微软雅黑", 14), Brushes.White, 35, -75);//设置文字、字体、大小、颜色、起始位置 bitmap.Save("D:\\1.jpg"); } }
我总结的技巧:旋转中心放在图片中心就好,只要控制好旋转的角度(即文字要旋转的角度),然后在调用DrawString方法的时候,调整X、Y的大小就可以了。
效果图: