资讯专栏INFORMATION COLUMN

如何优雅的生成海报/动态合成图片 ?

hearaway / 1966人阅读

摘要:感谢提供的图床服务适用场景我希望这个项目用于渲染需要动态合成的图片,例如用户名片需要动态渲染名字和头像等,而非一经渲染就恒定不变的,例如等。快速找到适合自己的海报,快速集成可扩展高性能的海报渲染功能。

poster-generater

⚡⚡⚡海报生成器. 只需要一个简单的 json 配置即可生成你需要的海报...

说明

此项目诞生有一段时间了,我本人也一直在使用这个程序,从一开始的 golang 版本,到现在的 java 版本,一路上也得到了许多朋友的支持和鼓励。
在 golang 版本的时候,就有朋友跟我说:『我非常喜欢这个项目,我非常希望加入到这个项目中来,但是我是从事JAVA开发的,可不可以弄一个 java 版本的』?加上我在 golang 开发中遇到了一些让我头疼的问题,以及常年写 OO(面向对象) 代码导致的惯性思维,让我在 golang 开发中备受煎熬。
所以今年年初的时候我决定把这个项目用 java 实现一遍,如今 java 版本已经发布,添加了许多使用特型,希望给大家带来更好的使用体验。同时也希望有能力的朋友可以和我一起完善这个项目(欢迎PR、issues),让更多的人享受到项目带来的便利。

感谢 sm.ms 提供的图床服务
适用场景

我希望这个项目用于渲染需要动态合成的图片,例如用户名片(需要动态渲染名字和头像等),而非一经渲染就恒定不变的,例如logo、banner等。虽然 poster-generater 两者都可以实现。

项目愿景

希望广大开发者可以不在为海报制作而烦恼。快速找到适合自己的海报,快速集成可扩展、高性能的海报渲染功能。

在线体验

点击 在线测试

如果点击 提交测试 后没有反应, 参考如下解决方案,点击加载不安全的脚本即可。 
出现该问题的原因是因为 测试地址不是 https 协议,所以 chrome 会给以警告。
java 版本功能更丰富

基于 java 开发,部署和二次开发更方便

图片将上传到 公共 CDN,不占用主机磁盘,且速度更快

支持结果缓存,相同的 海报配置 不会重复渲染,一次渲染持续保存,速度更快

添加删除结果 API

支持自定义字体,运行目录下新建 fonts 文件夹,里面放 ttf 格式字体就行。

支持模板图片,减少网络图片加载,运行目录下新建 templates 文件夹,支持多种图片格式。

缓存网络图片,减少网络图片加载

支持企业定制化开发部署,详情请联系我

ps:自定义字体、模板图片、网络图片缓存路径均可配置。具体配置参考 example.application.properties
相关资源

github 仓库

共享海报库

sm.ms 免费图床

sm.ms 图床 js 插件

公开测试地址: http://118.24.86.202:8000

此地址是我的测试机,配置不高,请不要在生产环境中使用

下载

下载 jar 包

$ wget http://static.janguly.com/poster-2.1-SNAPSHOT.jar
你也可以 点击下载

克隆代码

$ git clone https://github.com/qbhy/poster-generater.git

运行 jar
$ java -jar poster-2.0-SNAPSHOT.jar --server.port=8000 --poster.downloadPath=/var/poster/downloads
如果你不设置 server.port 参数,默认使用 8000。如果不设置 poster.downloadPath,默认使用当前目录下的 downloads 目录。你也可以添加 application.properties 或者 config/application.properties 文件进行配置
rest api

任何客户端发起 http 请求即可生产相应海报

创建海报

POST /poster
需要 json 格式的海报参数

找到海报

GET /poster/{key}
key 值为创建海报 json 的 md5 值

删除海报

DELETE /poster/{key}
key 值为创建海报 json 的 md5 值

反馈

扫描下面的二维码加群,如果扫码进不去(人数超过100后不能扫码进群),扫二维码加我好友,拉你进【poster交流群】

96qbhy@gmail.com
github:qbhy/poster-generater

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/74329.html

相关文章

  • 小程序如何生成海报分享朋友圈

    摘要:项目需求写完有一段时间了,但是还是想回过来总结一下,一是对项目的回顾优化等,二是对坑的地方做个记录,避免以后遇到类似的问题。需求利用微信强大的社交能力通过小程序达到裂变的目的,拉取新用户。摘要: 小程序开发必备技能啊... 原文:小程序如何生成海报分享朋友圈 作者:小白 Fundebug经授权转载,版权归原作者所有。 项目需求写完有一段时间了,但是还是想回过来总结一下,一是对项目的回顾优...

    lemon 评论0 收藏0
  • 小程序如何生成海报分享朋友圈

    摘要:项目需求写完有一段时间了,但是还是想回过来总结一下,一是对项目的回顾优化等,二是对坑的地方做个记录,避免以后遇到类似的问题。需求利用微信强大的社交能力通过小程序达到裂变的目的,拉取新用户。 项目需求写完有一段时间了,但是还是想回过来总结一下,一是对项目的回顾优化等,二是对坑的地方做个记录,避免以后遇到类似的问题。 需求 利用微信强大的社交能力通过小程序达到裂变的目的,拉取新用户。生成的...

    Lemon_95 评论0 收藏0
  • 微信小程序海报生成组件封装

    摘要:每个小程序成型后,一般都会选择生成带菊花码的海报分享出去来吸引更多的流量。 每个小程序成型后,一般都会选择生成带菊花码的海报分享出去来吸引更多的流量。下面来介绍下他的一种实现方式吧 组件Github地址: https://github.com/WGinit/min... 原理:主要利用微信小程序强大的Canvas API来合成,生成后可用wx.canvasToTempFilePath(...

    Hwg 评论0 收藏0
  • 利用html2canvas实现移动端上传图片生成海报

    摘要:所以需要在这里做一个判断。使用的内联样式时遇上的写法问题直接使用手机拍照得到的图片方向有问题 原文链接:链接描述使用vue+html2canvas+exif-js github地址 线上demo 主要功能 上传图片 对图片进行操作:移动、放大、缩小 合成海报 具体功能: 上传图片 html: js getPhoto () { var imageInput = docu...

    Cruise_Chan 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<