|
2 månader sedan | |
---|---|---|
core | 4 månader sedan | |
example-app | 7 år sedan | |
.gitignore | 4 månader sedan | |
README.md | 2 månader sedan | |
mvnw | 7 år sedan | |
mvnw.cmd | 7 år sedan | |
pom.xml | 6 månader sedan |
网上找到的一个小Project用来尝试flyingsaucer,可以省了一些脚手架的工作。https://github.com/cgenin/springboot.pdfgenerator
mvn test
然后检查 ls core/target/tmp-test/
alice.pdf是我从 https://github.com/flyingsaucerproject/flyingsaucer/tree/main/flying-saucer-examples/src/main/resources/demos/alice 拷贝来生成的。
见core/src/test/java/net/christophe/genin/spring/boot/pdfgenerator/core/PdfBuilderTest.java:test_alice
同理可以尝试其他的flyingsaucer的例子和特性,按列渲染Table可以使用Mustache的section能力, 在PdfBuilderTest里可以为Table提前准备好数据
An spring boot library for generating PDF files from an Xhtml file. This library also provide an mustache's template motor to dynamically generate pdf. This library use flying saucer for the pdf generation and the .
pdfgenerator is automatically added to spring configuration. The main class is an Builder to specifying template parameters. Inject directly this instance like this :
@Autowired
private PdfGeneratorBuilder pdfGeneratorBuilder;
this is an simple example of generation :
Generator generator = pdfGeneratorBuilder
.create()
.withXhtml("<html><body>the universal response is {{response}}.</body></html>")
.build();
Map<String, Object> data = new HashMap<>();
data.put("response", "42");
byte[] pdfBuffer = generator.toBytes(data);