如何優雅的生成海報/動態合成圖片 ?

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

相關文章
相關標籤/搜索