想知道分享海报图片的生成方式吗?

源码地址

源码地址:https://gitee.com/hengboy/html-covert-image

目的

本项目致力于生成海报图片,使用html转换image的方案实现,通过Java调取PhantomJs来进行转换。

环境准备

在使用本项目之前,需要安装PhantomJs到运行项目的服务器环境中,如下提供Mac/Linux两种方式的方式:

  • Mac方式下载
wget https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-2.1.1-macosx.zip
  • Linux方式下载
wget https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-2.1.1-linux-x86_64.tar.bz2

下载完成后准备解压文件,解压完成后得到bin目录下的phantomjs可执行文件,我们需要把该文件放置到/usr/local/bin目录下:

cp phantomjs-2.1.1-macosx/bin/phantomjs /usr/local/bin

集成本项目依赖

在你的项目中添加html-convert-image的依赖,如下分两种集成方式:

  • Maven环境

    com.gitee.hengboy
    html-convert-image
    1.0.0.RELEASE

  • Gradle环境
compile group: 'com.gitee.hengboy', name: 'html-convert-image', version: '1.0.0.RELEASE'

怎么生成呢?

生成比较简单方便,只需要传递html的网址就可以了,如下所示:

// 执行html转换图片
String url = "https://cloud.tencent.com/developer";
BufferedImage img = Html2ImageByJsWrapper.renderHtml2Image(url);
// 获取图片base64字符串
String imageBase64 = HtmlToImageWrapper.getImageBase64(img,MediaType.ImagePng);

得到图片的base64字符串,你就可以通过工具类把base64转换成图片了。

有问题要问?

如果你有技术相关的问题想要咨询恒宇少年,请去博客(http://blog.yuqiyu.com)首页左侧导航栏,点击知识星球微信扫码加入我的星球。

与恒宇少年面对面

如果你喜欢恒宇少年的相关文章,那么就去微信公众号(恒宇少年)关注我吧!!!

当然你也可以去 SpringCloud码云源码 项目底部扫描微信公众号二维码关注我,感谢阅读!!!

学习目录推荐

  • SpringCloud相关系列文章访问:https://www.jianshu.com/p/64e4aaada96b
  • SpringBoot相关系列文章请访问:http://www.jianshu.com/p/9a08417e4e84
  • QueryDSL相关系列文章请访问:http://www.jianshu.com/p/99a5ec5c3bd5
  • SpringDataJPA相关系列文章请访问:http://www.jianshu.com/p/615ed9c1fe84

开源信息

这段时间一直在编写开源的相关框架,致力于公司使用的框架升级以及开源计划,将公司使用到的工具以及插件进行升级重构并且开源。

  • 代码生成器(Code-Builder)
    code-builder代码生成器根据你提供的模板文件(目前支持freemarker)自动生成实体类,可以很大很有效的提高开发效率。
    Gitee地址:https://gitee.com/hengboy/code-builder
    Github地址:https://github.com/hengyuboy/code-builder
  • 持久化框架(MyBatis-Enhance)
    mybatis-enhance是一个对mybatis框架的增强封装,提供一系列的内部方法来完成单表数据的操作,多表数据提供DSL方式进行操作。
    Gitee地址:https://gitee.com/hengboy/mybatis-enhance
    Github地址:https://github.com/hengyuboy/mybatis-enhance
  • 自动分页插件
    MyBatis-Pageable是一款自动化分页的插件,基于MyBatis内部的插件Interceptor拦截器编写完成,拦截Executor.query的两个重载方法计算出分页的信息以及根据配置的数据库Dialect自动执行不同的查询语句完成总数量的统计。
    Gitee地址:https://gitee.com/hengboy/mybatis-pageable

你可能感兴趣的:(想知道分享海报图片的生成方式吗?)