标题C# 后台 背景图片拼接图片与文字,文字图片生成与背景图片合成

最近有个需求是将生成的邀请码与背景图片合成成为新的图片,查找了一些资料后又整理了一遍,查到了一个群主的帖子,虽然代码略微有点问题,地址是:https://www.cnblogs.com/stulzq/p/6137715.html,下面上修改后的代码,有两个资源图片,是自己做的,第一个是背景图片(500600),第二个是前景图片(200200)。

public ActionResult Index(){//生成邀请码图片 字符间距 带空格比较简单//Image img = CreateImage("1 2 3 4 5 6", true, 12);//修改照片分辨率大小//img = ResizeImage(img, 200, 100);//保存邀请码图片//img.Save("D:/3.jpg");//开始合并图片Image ibpic = Image.FromFile("D:/1.jpg");Image inpic = Image.FromFile("D:/2.jpg");Bitmap bmp = CombinImage(ibpic, inpic, 0, -100);bmp.Save("D:/4.jpg", ImageFormat.Jpeg);return View();}
/// <summary>/// 生成文字图片/// </summary>/// <param name="text"></param>/// <param name="isBold"></param>/// <param name="fontSize"></param>public Image CreateImage(string text, bool isBold, int fontSize){int wid = 400;int high = 200;Font font;if (isBold){font = new Font("Arial", fontSize, FontStyle.Bold);}else{font = new Font("Arial", fontSize, FontStyle.Regular);}//绘笔颜色SolidBrush brush = new SolidBrush(Color.Black);StringFormat format = new StringFormat(StringFormatFlags.NoClip);format.Alignment = StringAlignment.Center;format.LineAlignment = StringAlignment.Center;Bitmap image = new Bitmap(wid, high);Graphics g = Graphics.FromImage(image);g.Clear(Color.White);//透明RectangleF rect = new RectangleF(0, 0, wid, high);//绘制图片g.DrawString(text, font, brush, rect, format);//释放对象g.Dispose();return image;}/// <summary>  /// 合并图片  /// </summary>  /// <param name="imgBack"></param>  /// <param name="img"></param>  /// <returns></returns>  public static Bitmap CombinImage(Image imgBack, Image img, int xDeviation = 0, int yDeviation = 0){Bitmap bmp = new Bitmap(imgBack.Width, imgBack.Height);Graphics g = Graphics.FromImage(bmp);g.Clear(Color.White);g.DrawImage(imgBack, 0, 0, imgBack.Width, imgBack.Height);//白色边框g.FillRectangle(System.Drawing.Brushes.White, imgBack.Width / 2 - img.Width / 2 + xDeviation - 1, imgBack.Height / 2 - img.Height / 2 + yDeviation - 1, img.Width + 2, img.Height + 2);//填充图片g.DrawImage(img, imgBack.Width / 2 - img.Width / 2 + xDeviation, imgBack.Height / 2 - img.Height / 2 + yDeviation, img.Width, img.Height);GC.Collect();return bmp;}/// <summary>  /// Resize图片  /// </summary>  /// <param name="bmp">原始Bitmap</param>  /// <param name="newW">新的宽度</param>  /// <param name="newH">新的高度</param>  /// <returns>处理以后的图片</returns>  public static Image ResizeImage(Image bmp, int newW, int newH){try{Image b = new Bitmap(newW, newH);Graphics g = Graphics.FromImage(b);// 插值算法的质量    g.InterpolationMode = InterpolationMode.HighQualityBicubic;g.DrawImage(bmp, new Rectangle(0, 0, newW, newH), new Rectangle(0, 0, bmp.Width, bmp.Height),GraphicsUnit.Pixel);g.Dispose();return b;}catch{return null;}}

原文:
https://www.cnblogs.com/wangbg/p/8376293.html

C# 后台 背景图片拼接图片与文字,文字图片生成与背景图片合成相关推荐

  1. 电子签名生成的图片为空白,以及生成透明底签名图片转为白色底

    电子签名如何解决生成的图片为空白的问题,以及生成透明底签名图片转为白色底 一.生成的图片为空白 项目有个新需求需要加电子签名,在实现的过程中遇到了许多问题,现用的插件笔画延迟非常严重,好不容易做完之后 ...

  2. php 图片处理,根据rgb生成纯色的图片

    $image = imagecreatetruecolor(200, 200);//图片大小$white = imagecolorallocate($image, $rAverage, $gAvera ...

  3. C#利用Graphics类绘制进阶--根据文字内容自动生成指定旋转角度图片

    public System.Drawing.Image BuildBitmap(string content, System.Drawing.Font font, float py)//根据文字自动生 ...

  4. webp的生成转换方法之图片转webp,包括生成webp动态图片

    谷歌webp插件包下载地址,谷歌的需要翻墙,我翻墙给小伙伴们下载好了,这里只准备了3大系统的64位的,32位的取官网下载. 64:https://pan.baidu.com/s/1g_0jBUm6MY ...

  5. Android把文字写到图片上生成图片+文字的新图片

    我们项目最近需要微信分享员工二维码功能,二维码图片直接使用zxing就可以生成,但是生成之后只有一个图片,而我们需求的要求是这样的: 没错就是二维码下边有一行提示文字,你可能会想直接imageview ...

  6. Java | 将文字生成在空白图片居中位置(根据图片大小,自动调节文字大小)

    Java | 将文字生成在空白图片居中位置(根据图片大小,自动调节文字大小) 话不多说,直接上代码.(大家可以自己根据需要设置图片大小,不过图片过小时,字体会变模糊,尽量设置图片大一点,600~100 ...

  7. java gif合成_java图片处理——多张图片合成一张Gif图片并播放或Gif拆分成多张图片...

    1.多张jpg图合成gif动画 /*** 把多张jpg图片合成一张 *@parampic String[] 多个jpg文件名 包含路径 *@paramnewPic String 生成的gif文件名 包 ...

  8. html 图片透明字不透明,CSS实现背景图片透明,文字不透明效果的两种方法

    项目中经常会用到背景图上放一些文字介绍,这里介绍两种技术来实现背景图片透明,文字不透明效果,记录一下,方便日后学习. 1.毛玻璃效果:背景图 + 伪类 + flite:blur(3px) .demo1 ...

  9. CSS实现背景图毛玻璃效果和如何保持图片上的文字显示正常

    说明 因为我的底子特别的差(大佬勿喷),今天想让文字在图片上方显示,并且给图片模糊,结果当图片模糊之后也就是实现毛玻璃效果后,发现图片上的文字也模糊掉了,这个问题当然可以用伪元素的方式解决,但是由于某 ...

最新文章

  1. 消息系统kafka原理解析
  2. LuaBridge 中C++类和继承示例
  3. 监控mysql锁定状态_MySQL 锁的监控及处理
  4. 四、COSMIC功能点实操
  5. spring python负载均衡_Spring Cloud:使用Ribbon实现负载均衡详解(上)
  6. hive 中文字符过滤_0650-6.2.0-通过UDF实现HiveImpala的中文拼音排序
  7. IDEA 控制台显示Run Dashboard
  8. Javascript飘窗代码
  9. 互联网之子——亚伦·斯沃茨:新时代网络自由的先驱
  10. linux-uos输入法丢失解决办法
  11. 拓嘉启远:拼多多前期没有流量如何补充
  12. C#、winfrom设置金额数字大小写转换
  13. 上进的凡凡,幸运数组,字符串魔法(easy)
  14. 【山大会议】私人聊天频道 WebRTC 工具类
  15. 基于PHP+小程序(MINA框架)+Mysql数据库的干洗店洗衣小程序系统设计与实现
  16. 浙江中控应邀参加2022中国工业软件发展大会
  17. python语言程序培训
  18. 云免流usb共享电脑_手机共享电脑网络,无需流量与WiFi即可高速上网,这次是真的黑科技!...
  19. 2020 年前端最火的技术到底是什么?
  20. 前端开发:使用JS正则表达式校验邮箱和手机号的方法

热门文章

  1. 三星Samsung 笔记本 改WIN7 BIOS 设置详解
  2. CSP(内容安全策略)防运营商劫持
  3. 系统集成项目管理之项目质量管理
  4. Python文本分析---笔记
  5. docker镜像导入失败,先收藏了
  6. idea切换分支忘记commit,导致自己辛苦写的代码被覆盖,找不回来,别慌,这里教你一个好办法找回你未提交的代码
  7. 银行管理系统 - 2022计科实训QT课设
  8. 二叉树遍历结果推二叉树_二叉树遍历技术
  9. 计算机专业毕业典礼,计算机网络技术专业毕业典礼发言稿
  10. 最大似然估计,最大后验估计,贝叶斯估计联系与区别