当前位置: 首页 > news >正文

海安网站建设建设银行门户网站

海安网站建设,建设银行门户网站,腾讯企点app下载安装,网站查询工信部背景如果您是UI美工大师或者PS大牛#xff0c;那本文一定不适合你#xff1b;如果当您需要自己做一张海报时#xff0c;可以立马有小伙伴帮您实现#xff0c;那本文大概率也不适合你。但是#xff0c;如果你跟我一样#xff0c;遇上到以下场景#xff0c;最近公司上了不…背景如果您是UI美工大师或者PS大牛那本文一定不适合你如果当您需要自己做一张海报时可以立马有小伙伴帮您实现那本文大概率也不适合你。但是如果你跟我一样遇上到以下场景最近公司上了不少传播方面的需求需要合成各种营销图片。人事部和办公室的小伙伴想做一些具有通用场景功能海报比如宣传报会议宣传图片但自己又对于PS这类的工具不是很擅长时那么您不妨看看我推荐的这款开源小工具看看这篇文章。作为程序员可以不会PS但一定要有自己解决问题的办法。通过开源程序站在巨人的肩膀上让你不用重复从0开始造轮子将时间投入到实际业务维护和开发中。在这里要感谢https://gitee.com/dromara社区的https://gitee.com/dromara/image-combiner。一、dromara社区在正式介绍这款工具时先介绍一下dromara社区dromara社区是很多开源工具的集结地很多开源的GVP比如熟知的MaxKey,Hutool,Sa-Token,Lite_Flow,Lamp-cloud等等感兴趣的朋友可以到他们的介绍页https://gitee.com/dromara看看介绍和开源项目的列表。二、image-combiner介绍1、能做什么ImageCombiner是一个专门用于Java服务端图片合成的工具没有很复杂的功能简单实用从实际业务场景出发提供简单的接口几行代码即可实现图片拼合当然用于合成水印也可以素材上支持图片、文本、矩形三种支持定位、缩放、旋转、圆角、透明度、颜色、字体、字号、删除线、居中绘制、文本自动换行等特性足够覆盖图片合成的日常需求。是不是对文字描述没有直观的感受那就先来一波成果图让你先直观的感受下他的功能。这是一张使用官网的代码生成出来的宣传海报图。是不是跟一些宣传的海报差不多了。后面会给出生成的具体的代码来详细说明大概的步骤来生成如下的结果。2、image-combiner目录将代码使用git clone下载下来之后使用开发IDE这里以eclipse为例打开。image-combiner的源代码还是比较清爽的从它的star数就可以看到受欢迎的程度还是可以的。三、如何编程化生成1、跟着官方例子调试任何一个开源项目拿到手之后除了先熟悉开源软件的源码结构之外在找到程序的主入口之后通过调试运行来预测和跟踪程序的运行方式从而掌握其源码的执行原理。在和自己的项目进行集成的时候就可以进行充分的调优甚至可以可以按照自己的方式进行优化如果是一些通用场景可以提交给社区最终实现来源开源反哺开源的正向操作。打开test目录下的AppTest.java类。这里以一个面比较全的方法类说明image-combiner的主要用法。选取的代码如下/*** 完整功能测试** throws Exception*/Testpublic void FullTest() throws Exception {String bgImageUrl https://img.thebeastshop.com/combine_image/funny_topic/resource/bg_3x4.png; //背景图测试url形式String qrCodeUrl http://imgtest.thebeastshop.com/file/combine_image/qrcodef3d132b46b474fe7a9cc6e76a511dfd5.jpg; //二维码String productImageUrl https://img.thebeastshop.com/combine_image/funny_topic/resource/product_3x4.png; //商品图BufferedImage waterMark ImageIO.read(new URL(https://img.thebeastshop.com/combine_image/funny_topic/resource/water_mark.png)); //水印图测试BufferedImage形式BufferedImage avatar ImageIO.read(new URL(https://img.thebeastshop.com/member/privilege/level-icon/level-three.jpg)); //头像String title # 最爱的家居; //标题文本String content 苏格拉底说“如果没有那个桌子可能就没有那个水壶”; //内容文本//合成器和背景图整个图片的宽高和相关计算依赖于背景图所以背景图的大小是个基准ImageCombiner combiner new ImageCombiner(bgImageUrl, OutputFormat.PNG);combiner.setBackgroundBlur(30); //设置背景高斯模糊毛玻璃效果combiner.setCanvasRoundCorner(100); //设置整图圆角输出格式必须为PNG//商品图设置坐标、宽高和缩放模式若按宽度缩放则高度按比例自动计算combiner.addImageElement(productImageUrl, 0, 160, 837, 0, ZoomMode.Width).setRoundCorner(46) //设置圆角.setCenter(true); //居中绘制会忽略x坐标参数改为自动计算//标题默认字体为“阿里巴巴普惠体”也可以自己指定字体名称或Font对象combiner.addTextElement(title, 55, 150, 1400);//内容设置文本自动换行需要指定最大宽度超出则换行、最大行数超出则丢弃、行高combiner.addTextElement(content, 微软雅黑, 40, 150, 1480).setAutoBreakLine(837, 2, 60);//头像圆角设置一定的大小可以把头像变成圆的combiner.addImageElement(avatar, 200, 1200, 130, 130, ZoomMode.WidthHeight).setRoundCorner(200).setBlur(5); //高斯模糊毛玻璃效果//水印设置透明度0.0~1.0combiner.addImageElement(waterMark, 630, 1200).setAlpha(.8f) //透明度0.0~1.0.setRotate(15); //旋转0~360按中心点旋转//二维码强制按指定宽度、高度缩放combiner.addImageElement(qrCodeUrl, 138, 1707, 186, 186, ZoomMode.WidthHeight);//元素对象也可以直接new然后手动加入待绘制列表TextElement textPrice new TextElement(1290, 40, 600, 1400);textPrice.setStrikeThrough(true); //删除线combiner.addElement(textPrice); //加入待绘制集合//动态计算位置int offsetPrice textPrice.getX() textPrice.getWidth() 10;combiner.addTextElement(999, 60, offsetPrice, 1400).setColor(Color.red);//执行图片合并combiner.combine();//保存文件combiner.save(d://fullTest.png);//或者获取流并上传oss等//InputStream is combiner.getCombinedImageStream();//String url ossUtil.upload(is);}2、海报生成区分解针对上述的宣传海报进行了分区并用数字1-5号进行标记1号一般用于宣传海报上的主要目标图片2号一般是商品的名字3号可以使价格4号位置通常会对商品或者活动信息进行简单的描述5号位置可以预留给二维码等信息这里我们忽略了一个基本需求就是海报有一个最基础的背景所以在制作海报前首先还应该准备一张基本的背景图。针对上面这种需求结合代码应该怎么进行实现3、海报相关资源准备图片合成类ImageCombiner是主要的工作类可以看下这个类的工作方法如下可以看到这个类的方法非常丰富包含所有的图片合成与处理的函数。通过构造ImageElement对象将背景图片设置到海报中同时海报的宽度等信息也是在这里进行了初始化。4、添加商品图和相关文字介绍在背景图的上面继续添加主要的宣传图片比如商品图像信息。//商品图设置坐标、宽高和缩放模式若按宽度缩放则高度按比例自动计算 combiner.addImageElement(productImageUrl, 0, 160, 837, 0, ZoomMode.Width).setRoundCorner(46) //设置圆角.setCenter(true); //居中绘制会忽略x坐标参数改为自动计算//标题默认字体为“阿里巴巴普惠体”也可以自己指定字体名称或Font对象 combiner.addTextElement(title, 55, 150, 1400);//内容设置文本自动换行需要指定最大宽度超出则换行、最大行数超出则丢弃、行高 combiner.addTextElement(content, 微软雅黑, 40, 150, 1480).setAutoBreakLine(837, 2, 60);//头像圆角设置一定的大小可以把头像变成圆的 combiner.addImageElement(avatar, 200, 1200, 130, 130, ZoomMode.WidthHeight).setRoundCorner(200).setBlur(5); //高斯模糊毛玻璃效果//水印设置透明度0.0~1.0 combiner.addImageElement(waterMark, 630, 1200).setAlpha(.8f) //透明度0.0~1.0.setRotate(15); //旋转0~360按中心点旋转//二维码强制按指定宽度、高度缩放 combiner.addImageElement(qrCodeUrl, 138, 1707, 186, 186, ZoomMode.WidthHeight);5、动态位置计算在一些场景中文字的距离不是提前可控的比如会根据前面文字的距离来设置后面文字的宽度实现动态的设置。这里来看image-combiner应该如何实现//元素对象也可以直接new然后手动加入待绘制列表 TextElement textPrice new TextElement(1290, 40, 600, 1400); textPrice.setStrikeThrough(true); //删除线 combiner.addElement(textPrice); //加入待绘制集合//动态计算位置 int offsetPrice textPrice.getX() textPrice.getWidth() 10; combiner.addTextElement(999, 60, offsetPrice, 1400).setColor(Color.red);使用Graphics2D对象创建图片并执行相关的写入操作。通过以上的步骤就可以生成我们需要的宣传图是不是很方便也很简单。四、总结和展望1、展望image-cominer的API和类的设计详细分解打算在下一篇中进行介绍。image-combiner的其它能力您可以下载代码后在自己的ide中进行实际跑一下这样比较有直观的效果。这里只是展示了它的基础能力具体的使用场景需要您来定义。通过编程化海报处理在应对批量的动态电子证书动态的个人信息证明等等是非常具有想象力的再此基础之上可以进行web化提供云服务接口或者桌面化提供给需要的用户进行使用。这些功能的扩展需要大家的聪明才智来头脑风暴肯定会有很多有意思的Idea。2、总结以上就是本文的主要内容文章首先简单介绍了Dromara开源社区然后介绍了基于Java的海报生成器image-combiner通过debug调试的方式完整的介绍了如何使用编程模式来完成一份海报的生成。最后对于image-combiner的功能扩展进行了展望。如果您有兴趣可以自己来扩展和完善。
http://www.hkea.cn/news/14459167/

相关文章:

  • 烟台个人网站建设关于 wordpress
  • jsp的网站店标logo设计
  • 高碑店做网站的公司北京国际建设集团网站
  • 那个网站的公众后推广做的好wordpress 投稿主题
  • 哪个网站做分享赚佣金移动公司需要网络工程专业
  • 建设网站推广广告图免费找工程项目承包软件
  • 照片管理网站模板做网站的需求是吗
  • 上海兴业建设有限公司网站河北省建设厅网站查询中心
  • 建设厅注册中心网站首页新中式装修风格效果图
  • 专业网站建设微信官网开发食堂网站建设方案
  • 微信平板专用版 安卓全国推广优化网站
  • 资源类网站怎么做网页游戏哪个平台好
  • 除了速卖通还有什么网站做外贸大连网络公司有哪些
  • 微网站开发商网站怎么做弹框
  • 建筑设计案例网站找别人做网站一般注意什么
  • 电商网站设计公司可找亿企邦安徽房产网站建设
  • 网站开发的概要设计模板做生蚝的网站
  • 东莞网站推广大全活动策划书模板范文
  • 沈阳网站制作思路网络郑州seo关键词排名优化
  • 工程建设领域专项治理工作网站做公司网站的理念
  • 网站模板 瀑布流大连高新园区招聘
  • 哪个网站开发好漳州市建设局网站
  • 与小学生一起做网站万全网站建设
  • 建设银行网站驱动专建网站
  • 手机网站支付帝国备份王wordpress
  • 全国门户网站有哪些环保局网站建设
  • 汕头中文建站模板叮当设计网站
  • 建设工程项目查询网站网站空间一定要买吗
  • 建设银行 上海 招聘网站哪个网站有学做吃的
  • 做网站排行网页传奇哪个好玩