.NET 工具库高效生成 PDF 文档

QuestPDF 是一个开源 .NET 库,用于生成 PDF 文档。使用了C# Fluent API方式可简化开发、减少错误并提高工作效率。利用它可以轻松生成 PDF 报告、发票、导出文件等。

QuestPDF 是一个革命性的开源 .NET 库,它彻底改变了我们生成 PDF 文档的方式。

QuestPDF 的核心思想在于使用声明式的 C# 代码来描述 PDF 文档的结构和样式。

这种方法与我们使用 HTML 和 CSS 构建网页的方式非常相似,我们能够迅速上手,并轻松创建复杂的 PDF 文档。

安装QuestPDF Nuget包

创建一个WebAPI项目,利用QuestPDF快速生成PDF文件。

1、需要在Program添加配置信息

cs 复制代码
#region QuestPDF设置
// 1、请确保您有资格使用社区许可证,不设置的话会报异常。
Settings.License = LicenseType.Community;
// 2、禁用QuestPDF库中文本字符可用性的检查
Settings.CheckIfAllTextGlyphsAreAvailable = false;
#endregion

默认情况下,使用 QuestPDF 生成 PDF 文档时,它会检查所使用的字体是否支持文本中的所有字符,并在发现不能显示的字符时输出一条警告消息。这个选项可以确保文本中的所有字符都能正确地显示在生成的 PDF 文件中。
2.生成文档控制器代码

cs 复制代码
/// <summary>
/// 创建PDF文件
/// </summary>
/// <returns></returns>
[HttpGet(Name = "GeneratePdf")]
public IActionResult GeneratePdf()
{
    //创建文档
    var document = CreateDocument();
​
    // 生成PDF文件
    var pdf = document.GeneratePdf();
​
    // 返回文件流
    return File(pdf, "application/pdf", "QuestPDFDemo.pdf");
}

3、运行效果

使用文档: https://www.questpdf.com/quick-start.html

相关推荐
【这个世界会好的】15 小时前
单层PDF转双层PDF工具
pdf
2501_9071368220 小时前
批量改发票pdf名称为金额+发票号码+销售方,方便金额核对
pdf
li星野21 小时前
从 PDF 到 FAISS 向量索引:构建本地 RAG 数据预处理流水线
pdf·faiss
selfboot01 天前
已知 PDF 密码,如何免费去掉密码保护并保存无密码副本
pdf
Pearson1 天前
特大pdf文件在线预览技术方案
javascript·nginx·pdf
zyplayer-doc1 天前
知识库官方CLI工具已发布并开源,以及重写思维导图编辑器,提供更完整的编辑能力,zyplayer-doc 2.6.6 发布啦!
人工智能·安全·pdf·编辑器·创业创新
庖丁AI1 天前
PDF转Markdown工具怎么选?AI知识库和RAG场景要注意什么
人工智能·pdf·格式转换
2601_961875242 天前
高考真题电子版|2025高考全科真题分类PDF
金融·pdf·云计算·azure·七牛云存储·交友·高考
质造者2 天前
Python 本地 RAG 实战 | Ollama+ChromaDB 实现 PDF 离线智能问答
开发语言·python·pdf·大模型·rag
王莎莎-MinerU2 天前
从 OCR 到 Context Engineering:用 MinerU 搭一个可复现文档解析评测
人工智能·深度学习·机器学习·pdf·ocr·个人开发