推荐一个功能强大、API简介、可视化的PDF文档生成器。
01
项目简介
这是一个PDF文档生成器.Net开源库,提供了一个布局引擎,对分页功能完美的支持。
不过最新版本已经开始收费,2022.12.X 之前的版本还可以免费使用,有能力的也可以下载源码,自行修改和优化。
页面支持元素有:
1、视觉:文本、图像、页面背景、边框、行高、画布、占位符;
2、样式:宽高、Padding、左右上下浮动、旋转、最小容器等一些类似Css样式;
3、布局:分页、表格、行、列、网格、内联、Tab标签、列表、层级等。
总的来说,页面布局方式与Html布局很类似,让开发人员能快速的上手。
02
使用示例
1、安装依赖库:QuestPDF
2、示例代码
代码语言:javascript复制using QuestPDF.Fluent;
using QuestPDF.Helpers;
using QuestPDF.Infrastructure;
Document.Create(container =>
{
container.Page(page =>
{
page.Size(PageSizes.A4);
page.Margin(2, Unit.Centimetre);
page.PageColor(Colors.White);
page.DefaultTextStyle(x => x.FontSize(20)).FontFamily("Microsoft YaHei"));
page.Header()
.Text("你好 PDF!")
.SemiBold().FontSize(36).FontColor(Colors.Blue.Medium);
page.Content()
.PaddingVertical(1, Unit.Centimetre)
.Column(x =>
{
x.Spacing(20);
x.Item().Text("这是一个PDF文档生成器.Net开源库,提供了一个布局引擎,对分页功能完美的支持。");
x.Item().Image(Placeholders.Image(200, 100));
});
page.Footer()
.AlignCenter()
.Text(x =>
{
x.Span("页码 ");
x.CurrentPageNumber();
});
});
})
.GeneratePdf("示例.pdf");
3、效果
03
项目地址
https://github.com/QuestPDF/QuestPDF