Skip to content

Java SDK

SpringBoot项目

一、添加依赖

xml
<dependency>
    <groupId>net.fastposter</groupId>
    <artifactId>fastposter-client-starter</artifactId>
    <version>2.2.3</version>
</dependency>
<dependency>
    <groupId>net.fastposter</groupId>
    <artifactId>fastposter-client-starter</artifactId>
    <version>2.2.3</version>
</dependency>
gradle
implementation 'net.fastposter:fastposter-client-starter:2.2.3'
implementation 'net.fastposter:fastposter-client-starter:2.2.3'

二、修改配置文件

修改 application.yml 配置文件。 token应用中心获取

yaml
fastposter:
  token: 7800fb5d317f4e78
fastposter:
  token: 7800fb5d317f4e78
yaml
fastposter:
  token: ApfrIzxCoK1DwNZOEJCwlrnv6QZ0PCdv
  # 设置接入端点
  endpoint: http://127.0.0.1:5000
fastposter:
  token: ApfrIzxCoK1DwNZOEJCwlrnv6QZ0PCdv
  # 设置接入端点
  endpoint: http://127.0.0.1:5000

三、调用代码示例

java
package demo.fastposter;

import net.fastposter.client.FastposterClient;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;

import java.util.HashMap;
import java.util.Map;

@SpringBootTest
public class FastposterClientTest {

    @Autowired
    FastposterClient client;

    @Test
    public void test() {

        // 2.准备海报参数
        Map<String, Object> params = new HashMap<>();
        params.put("name", "中文测试");

        // 3.生成海报并保存
        client.buildPoster("84935f6d73c8f268").params(params).build().save();

    }

}
package demo.fastposter;

import net.fastposter.client.FastposterClient;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;

import java.util.HashMap;
import java.util.Map;

@SpringBootTest
public class FastposterClientTest {

    @Autowired
    FastposterClient client;

    @Test
    public void test() {

        // 2.准备海报参数
        Map<String, Object> params = new HashMap<>();
        params.put("name", "中文测试");

        // 3.生成海报并保存
        client.buildPoster("84935f6d73c8f268").params(params).build().save();

    }

}

生成的海报图片

普通Java项目

一、添加依赖

xml
<dependency>
    <groupId>net.fastposter</groupId>
    <artifactId>fastposter-client</artifactId>
    <version>2.2.3</version>
</dependency>
<dependency>
    <groupId>net.fastposter</groupId>
    <artifactId>fastposter-client</artifactId>
    <version>2.2.3</version>
</dependency>
gradle
implementation 'net.fastposter:fastposter-client:2.2.3'
implementation 'net.fastposter:fastposter-client:2.2.3'

二、调用代码示例

token控制台获取

java
package demo.fastposter;

import net.fastposter.client.FastposterClient;

import java.util.HashMap;
import java.util.Map;

public class FastposterClientDemo {

    public static void main(String[] args) {

        // 1.创建海报客户端对象
        FastposterClient client = FastposterClient.builder()
                // .endpoint("http://127.0.0.1:5000")      // 设置接入端点(云服务不需要设置)
                .token("ApfrIzxCoK1DwNZOEJCwlrnv6QZ0PCdv")  // 设置token
                .build();

        // 2.准备海报参数
        Map<String, Object> params = new HashMap<>();
        params.put("name", "测试文本");

        // 3.生成海报并保存
        client.buildPoster("80058c79d1e2e617").params(params).build().save();

    }

}
package demo.fastposter;

import net.fastposter.client.FastposterClient;

import java.util.HashMap;
import java.util.Map;

public class FastposterClientDemo {

    public static void main(String[] args) {

        // 1.创建海报客户端对象
        FastposterClient client = FastposterClient.builder()
                // .endpoint("http://127.0.0.1:5000")      // 设置接入端点(云服务不需要设置)
                .token("ApfrIzxCoK1DwNZOEJCwlrnv6QZ0PCdv")  // 设置token
                .build();

        // 2.准备海报参数
        Map<String, Object> params = new HashMap<>();
        params.put("name", "测试文本");

        // 3.生成海报并保存
        client.buildPoster("80058c79d1e2e617").params(params).build().save();

    }

}

生成的海报图片

常见问题

保存海报

保存在当前程序运行时所在的目录,也可以通过.save(path)参数指定生成的海报保存路径。

java
String path = client.buildPoster("ced9b1d5337d494c")
    .params(params)
    .build()
    .save();
String path = client.buildPoster("ced9b1d5337d494c")
    .params(params)
    .build()
    .save();

指定生成的海报保存路径

java
client.buildPoster("ced9b1d5337d494c")
    .params(params)
    .build()
    .save("/app/store/uuid.png");
client.buildPoster("ced9b1d5337d494c")
    .params(params)
    .build()
    .save("/app/store/uuid.png");

返回字节数组

java
byte[] bytes = client.buildPoster("ced9b1d5337d494c")
    .params(params)
    .build()
    .bytes();
byte[] bytes = client.buildPoster("ced9b1d5337d494c")
    .params(params)
    .build()
    .bytes();

返回字节流

java
InputStream input = client.buildPoster("ced9b1d5337d494c")
    .params(params)
    .build()
    .byteStream();
InputStream input = client.buildPoster("ced9b1d5337d494c")
    .params(params)
    .build()
    .byteStream();

返回Base64格式

某些场景需要使用到Base64格式编码

java
String b64 = client.buildPoster("ced9b1d5337d494c")
    .params(params)
    .b64()
    .build()
    .b64String();
String b64 = client.buildPoster("ced9b1d5337d494c")
    .params(params)
    .b64()
    .build()
    .b64String();

海报格式

支持 jpeg png webp pdf,直接调用快捷方法即可

java
client.buildPoster("ced9b1d5337d494c").params(params)
        .pdf()  // pdf格式
        .png()  // png格式
        .jpeg() // jpeg格式
        .webp() // webp格式
        .build() // 生成海报
        .save(); // 保存海报
client.buildPoster("ced9b1d5337d494c").params(params)
        .pdf()  // pdf格式
        .png()  // png格式
        .jpeg() // jpeg格式
        .webp() // webp格式
        .build() // 生成海报
        .save(); // 保存海报