当前位置: 首页 > news >正文

C#中PDF操作-QuestPDF介绍和使用教程

一、QuestPDF 简介

QuestPDF 是一个专为 .NET 平台打造的现代化 PDF 生成库,它采用声明式、代码驱动的设计理念,让你直接用 C# 代码描述文档结构,无需依赖 HTML 转换或外部渲染引擎-7。其强大的 Fluent API 支持链式调用,内置布局引擎能够自动处理分页与换行,非常适合用于生成发票、报表、合同、数据导出等场景-7。

二、环境搭建

2.1 安装

QuestPDF 通过 NuGet 安装,在 .NET 6+ 项目中直接使用即可

dotnet add package QuestPDF

2.2 许可证配置

根据项目类型,需要在应用启动时设置许可证。对于个人、非营利组织以及年营收低于 100 万美元的企业,可以免费使用社区版

// 社区版许可证(只需配置一次,通常放在 Program.cs 中)QuestPDF.Settings.License=LicenseType.Community;

如果不配置许可证就会报错

System.Exception:“ Thank you for choosing QuestPDF 👋 Before you continue, please take a moment to configure your license. This step helps ensure correct license compliance. QuestPDF requires a Commercial License for production use by organizations with more than $1M USD in annual gross revenue. Individuals, non-profits, open-source projects, and smaller companies qualify for the free Community license. If you are not the decision-maker for software purchases, please share the licensing and pricing details with your team lead or manager: https://www.questpdf.com/license Available license options: - Community: free, - Evaluation: intended solely for evaluation before choosing an appropriate license; not suitable for production use, - Professional: paid, for teams up to 10 developers with dedicated support, - Enterprise: paid, for unlimited developers with prioritized dedicated support. Set the license once at application startup. By doing so, you confirm that the selected tier matches your usage: > QuestPDF.Settings.License = LicenseType.Evaluation; // or Community / Professional / Enterprise No license key or activation is required — we trust you to select the correct option. By choosing the right license, you help ensure QuestPDF remains sustainable and continuously improving for everyone. We wish you a great experience! 🚀 ”

2.3 引入命名空间

usingQuestPDF.Fluent;usingQuestPDF.Helpers;usingQuestPDF.Infrastructure;

三、核心概念与文档结构

QuestPDF 的文档结构遵循文档 → 页面 → 容器 → 元素的层次模型-7:

  • Document:文档的入口,通过Document.Create()定义整体结构。
  • Page:代表单个页面,可设置尺寸、边距、页眉、页脚、背景等属性。
  • Container:布局容器,负责组织子元素(如 Column、Row 等)。
  • Element:具体内容元素,如文本(Text)、图片(Image)、表格(Table)等。

Document 是一个不可变的构建器对象——调用Create()后返回的只是一个声明式的描述,并不会立即生成文件;必须显式调用.GeneratePdf()(同步)或.GeneratePdfAsync()(异步),传入文件路径或 Stream 才能真正写出 PDF

四、基础使用

生成第一个PDF文档

添加一个文本

usingQuestPDF.Fluent;usingQuestPDF.Helpers;usingQuestPDF.Infrastructure;// 设置许可证QuestPDF.Settings.License=LicenseType.Community;Document.Create(container=>{container.Page(page=>{page.Size(PageSizes.A4);page.Margin(20);page.Content().Text("Hello World PDF");});}).GeneratePdf("test.pdf");

使用Column纵向排两行

Document.Create(container=>{container.Page(page=>{page.Size(PageSizes.A4);page.Margin(20);//page.Content().Text("Hello World PDF");page.Content().Column(col=>{col.Item().Text("QuestPDF!").FontSize(24).Bold();col.Item().Text("这是我的第一个 PDF 文档。").FontSize(14);});});}).GeneratePdf("test.pdf");

http://www.jsqmd.com/news/900181/

相关文章:

  • 加香机源头工厂如何选?2026香薰机精油/商场香氛系统/加
  • 医疗AI模型评估实战:用Python的DeLong检验判断新诊断算法是否真的比老方法好
  • 2026年第二季度泰州五粮液回收平台深度解析:如何甄选专业、高效、保值的服务伙伴? - 2026年企业资讯
  • 第 5 篇:Agent 记不住事?补上 Memory + RAG 检索
  • 企业级集成怎么选:n8n、Zapier还是RestCloud iPaaS?
  • 2026年 东莞遮光膜厂家推荐排行榜:mini遮光膜/PET遮光膜/点阵遮光膜/黑色遮光膜/LED遮光膜/防漏光遮光膜优质品牌深度解析 - 品牌企业推荐师(官方)
  • 论文ai痕迹去不掉怎么办?2026年5月4款降AI工具深度推荐
  • 基于监督学习的工业物联网无线干扰识别:从原理到嵌入式实现
  • 2026年5月比较好的家电清洗公司哪家权威厂家推荐榜,油烟机深度清洗、空调全拆清洗、洗衣机夹层除菌清洗、冰箱及地暖清洗厂家选择指南 - 海棠依旧大
  • macOS Sequoia上如何安装gcc/g++环境?
  • 一站式搞定Invar 36现货:多规格棒材带材的优质供应网络汇总 - 品牌2025
  • Arm编译器v5到v6预定义宏迁移实战指南
  • 别再死记硬背L1、L2范数了!用Python可视化带你直观理解Lp范数家族
  • 2026年|论文去AI痕迹指南:DeepSeek降AI指令+3款工具测评(降至10%) - 降AI实验室
  • 2026年Q2专业的宁波公职面试培训公司:深度解析宁波彤心教育科技有限公司 - 2026年企业资讯
  • CSE-CIC-IDS2018数据集实战:如何用Python预处理CSV文件并快速开始你的入侵检测模型训练
  • 2026年 木屋厂家推荐排行榜:实木/防腐/原木/轻型/重型/景区/民宿/度假/网红/别墅/移动木屋及文旅木屋定制品牌与优质厂家推荐 - 品牌企业推荐师(官方)
  • [仅仅两步]的电信IPTV单线复用
  • 2026年论文降重指南:DeepSeek降AI指令与3款工具亲测解析(90%降至10%) - 降AI实验室
  • Board Scout:基于数据挖掘的棋牌游戏威胁预警系统设计与实现
  • 别再死记硬背公式了!用Python模拟一个天气预测的马尔可夫链(附完整代码)
  • 别再被‘鬼影’迷惑了!用Python模拟雷达多重频解距离模糊(附代码)
  • 2026年 吉帕钢HC1000/1470DP厂家推荐榜:宝钢超高强度钢,轻量化工艺与抗疲劳性能深度解析 - 品牌企业推荐师(官方)
  • 从想法到上线:我用AI在一天内“摸”出了一个面试文档系统
  • 车载以太网之要火系列 - 第53篇:郭大侠学DDS(数据帧):数据入帧君需知,序列化后力道施
  • 2026年 宝钢镀锌HC420/780DHD+Z吉帕钢厂家推荐榜单:超高强度/轻量化/汽车用先进高强钢品牌深度解析 - 品牌企业推荐师(官方)
  • 2026年当前本地花洒哪家强?长治科勒卫浴旗舰店深度测评与专业解析 - 2026年企业资讯
  • Scanpy实战:从10x Genomics原始数据到发表级图表,一篇就够了
  • 2026年5月,昆山市知名的空调维修服务商如何选?这份专业推荐指南给你答案 - 2026年企业资讯
  • 2026年5月新消息:广东财富传承律师咨询推荐深度解析 - 2026年企业资讯