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

poster-generater

⚡⚡⚡海报生成器. 只须要一个简单的 json 配置便可生成你须要的海报...java

说明

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

感谢 sm.ms 提供的图床服务

适用场景

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

项目愿景

但愿广大开发者能够不在为海报制做而烦恼。快速找到适合本身的海报,快速集成可扩展、高性能的海报渲染功能。golang

在线体验

点击 在线测试chrome

若是点击 提交测试 后没有反应, 参考以下解决方案,点击加载不安全的脚本便可。 开源海报生成器 2.0,功能更强大,速度更快。
出现该问题的缘由是由于 测试地址不是 https 协议,因此 chrome 会给以警告。

java 版本功能更丰富

  • 基于 java 开发,部署和二次开发更方便
  • 图片将上传到 公共 CDN,不占用主机磁盘,且速度更快
  • 支持结果缓存,相同的 海报配置 不会重复渲染,一次渲染持续保存,速度更快
  • 添加删除结果 API
  • 支持自定义字体,运行目录下新建 fonts 文件夹,里面放 ttf 格式字体就行。
  • 支持模板图片,减小网络图片加载,运行目录下新建 templates 文件夹,支持多种图片格式。
  • 缓存网络图片,减小网络图片加载
  • 支持企业定制化开发部署,详情请联系我
ps:自定义字体、模板图片、网络图片缓存路径都可配置。具体配置参考 example.application.properties

相关资源

下载

  1. 下载 jar 包api

    $ wget http://static.janguly.com/poster-2.1-SNAPSHOT.jar
    你也能够 点击下载
  2. 克隆代码缓存

    $ 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 请求便可生产相应海报安全

  • 建立海报bash

    POST /poster
    须要 json 格式的海报参数
  • 找到海报

    GET /poster/{key}
    key 值为建立海报 json 的 md5 值
  • 删除海报

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

反馈

扫描下面的二维码加群,若是扫码进不去(人数超过100后不能扫码进群),扫二维码加我好友,拉你进【poster交流群】
41556334643_.pic.jpgposter交流群

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