首页/新闻资讯/正文详情

用 WeasyPrint 把 HTML 转成 PDF:从 pip install 到第一份报告

发布时间:2026/11/7 10:07:28 来源:云帆数科 栏目:资讯中心
用 WeasyPrint 把 HTML 转成 PDF:从 pip install 到第一份报告
用 WeasyPrint 把 HTML 转成 PDF从 pip install 到第一份报告【免费下载链接】WeasyPrintThe awesome document factory项目地址: https://gitcode.com/gh_mirrors/we/WeasyPrint服务端要产出可打印的报告、发票或对账单时可以用 WeasyPrint 把 HTML 转 PDF。它不依赖浏览器内核CSS 布局引擎是纯 Python 代码文本渲染交给 Pango无需安装 Chromium 或无头浏览器。 能力速览WeasyPrint HTML 转 PDF把 HTML 解析成盒模型树并按 CSS 计算每个块的位置与尺寸。按页面尺寸和边距把内容切成多页把页码、脚注、页眉排进指定位置。输出带嵌入字体、图片和链接的矢量 PDF效果与浏览器预览一致无需安装 Chromium。还支持 PDF/A 等归档变体并能为屏幕阅读器附加无障碍标签。整条链路在单个 Python 进程内完成不产生子进程调用也不请求外部服务。 最短上手路径复制下面三行依次运行pip install weasyprint echo h1你好/h1 demo.html weasyprint demo.html demo.pdf第一行安装包及全部依赖第二行生成一个最小 HTML 文件第三行调用命令行入口。运行完你会在当前目录看到一个单页 PDF打开它是排好版的标题HTML 到 PDF 的完整链路已经跑通。Windows 下把 echo 一行换成手动新建 demo.html 文件即可其余两行不变。 按任务拆解用法生成带页码页眉的报告 PDF报告需要在页眉显示页码时用 page 规则把计数器放进页边距盒每页都会自动排版from weasyprint import HTML html stylepage{top-center{content:counter(page) / counter(pages)}}/stylep正文/p HTML(stringhtml).write_pdf(report.pdf)同样规则也可写入样式表配合命令行的 -s 参数使用更多 PDF 分页控制属性可看 docs/going_further.rst。批量转换目录下的 HTML 文件批量任务在 Python 里循环文件、复用同一进程避免反复启动解释器的开销from pathlib import Path from weasyprint import HTML out Path(out); out.mkdir(exist_okTrue) for f in Path(input).glob(*.html): HTML(filenamestr(f)).write_pdf(out / f{f.stem}.pdf)write_pdf 支持的全部参数可继续看 docs/api_reference.rst。只导出长文档的部分页面先 render() 拿到 Document 而不落盘再用 copy() 切出页码区间无需重新排版doc HTML(long.html).render() doc.copy(doc.pages[2:5]).write_pdf(excerpt.pdf)Document.copy 的完整用法示例可看 weasyprint/document.py。⚠️ 调优与避坑中文字体渲染为方块症状导出的 PDF 里中文全是方框。原因系统缺少中文字体Pango 找不到字形就回退成空框。修复sudo apt install fonts-noto-cjkDebian/Ubuntu后重新导出。相对路径的图片与字体静默丢失症状HTML 里图片空白font-face 回退到默认字体。原因相对 URL 基于不存在的基准目录解析。修复构造 HTML 时传入 base_url命令行则加 -u 参数。嵌入图片让 PDF 过大症状几页的文档体积达到几十兆。原因源图按原始分辨率全量嵌入。修复加 -D 150 限制嵌入分辨率或用 --optimize-images 无损重压缩。 继续深入官方文档适合想系统了解安装、页面模型和全部渲染参数的人。测试用例适合想看分页控制、脚注、渐变这些特性具体怎么写 CSS 的人。核心源码适合想研究 CSS 布局引擎实现或修 bug 的人。【免费下载链接】WeasyPrintThe awesome document factory项目地址: https://gitcode.com/gh_mirrors/we/WeasyPrint创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关推荐

TOF相机的四大落地场景:机器人避障、工业物流、3D拆垛与智能安防
TOF相机的四大落地场景:机器人避障、工业物流、3D拆垛与智能安防

TOF深度相机,通过测量调制红外光的往返飞行时间直接解算深度,无需经过双目立体匹配,直接输出稠密深度图,主控算力开销低。本文聚焦iToF相机:阐述TOF相机的主要应用场景。iTOF技术路线区分:CW-iToF与P-iToFi… · 2026/11/7 10:07:22

VDN-Minimax-H3 双向线性注意力分支:NoPE + Delta Rule 如何补全远场信息
VDN-Minimax-H3 双向线性注意力分支:NoPE + Delta Rule 如何补全远场信息

【免费下载链接】vdn-minimax-h3 VideoDeltaNet-H3: Live T2VA / I2VA / FL2VA / Ref2VA-like generation based on Minimax H3. 项目地址: https://gitcode.com/gh_mirrors/vd/vdn-minimax-h3 点击查看 免费下载 VDN-Minimax-H3(简称 VDN-H3&#xff0… · 2026/11/6 6:30:13

Pinyon Shift 原生渲染器深度解析:从PM4命令流到EDRAM、Resolve与纹理解码的完整指南
Pinyon Shift 原生渲染器深度解析:从PM4命令流到EDRAM、Resolve与纹理解码的完整指南

【免费下载链接】pinyon-shift A playable preview of Forza Horizon static recompilation 项目地址: https://gitcode.com/gh_mirrors/pi/pinyon-shift 点击查看 免费下载 Pinyon Shift 把 Xbox 360 版《Forza Horizon》重新编译为 PC 原生程序,其核心… · 2026/11/6 6:29:12

外地考高压电工证多久拿证最稳妥?别怕考不过白交培训费
外地考高压电工证多久拿证最稳妥?别怕考不过白交培训费

外地考高压电工证多久拿证最稳妥?别怕考不过白交培训费 怕考不过白交培训费?那你得先搞清楚高压电工证怎么考、多久能拿证、外地人怎么操作不踩坑。别急,我给你说透,省时省力又省钱。… · 2026/11/7 10:07:01

工地太忙根本没时间复习考试 桥架电工证怎么报名全攻略
工地太忙根本没时间复习考试 桥架电工证怎么报名全攻略

工地太忙根本没时间复习考试 桥架电工证怎么报名全攻略 工地上的节奏快得像在跑马拉松,活儿干不完,考试还卡着脖子。你可能正为【桥架电工证】怎么报名犯愁,更别提抽时间复习了。别急,这篇文章专门为你准备,从报名流程到备考技巧,一套搞定。… · 2026/11/7 10:07:01

台儿庄区哪里考电工证内部消息全公开别再交冤枉钱
台儿庄区哪里考电工证内部消息全公开别再交冤枉钱

台儿庄区哪里考电工证内部消息全公开别再交冤枉钱 怕考不过白交培训费?台儿庄区哪里考电工证?很多电工朋友都遇到过这样的情况,选错了培训机构,花了几千块,结果考试没过,证也没拿到,钱打水漂。这年头, 电工证… · 2026/11/7 10:07:01

六枝特区电工证怎么考?上岗必备证书的全流程干货
六枝特区电工证怎么考?上岗必备证书的全流程干货

六枝特区电工证怎么考?上岗必备证书的全流程干货 你是不是正被“急需特种作业证才能上岗找工作”的问题折磨?别急,六枝特区电工证就是你求职路上的“上岗必备”利器。今天我从一个过来人角度,告诉你怎么在六枝特区考电工证、怎么备考、怎么复习,帮你少走… · 2026/11/7 10:07:01

低学历也能考寿县特种作业操作证?含金量高到你想不到
低学历也能考寿县特种作业操作证?含金量高到你想不到

低学历也能考寿县特种作业操作证?含金量高到你想不到 你是不是也担心学历不高报不了名?别急,寿县特种作业操作证报考门槛其实没你想的那么高,只要符合条件, 含金量 照样够硬。今天就带你扒一扒这个证到底值不值得考,还能帮你避开那些坑。… · 2026/11/7 10:07:01

电工证复审多久开始内部消息曝光!别再被中介骗了
电工证复审多久开始内部消息曝光!别再被中介骗了

电工证复审多久开始内部消息曝光!别再被中介骗了 你是不是也遇到过这种情况,电工证快到期了,不知道去哪儿复审,生怕被中介坑钱?电工证复审多久开始这个问题,其实每年都有明确的规定,但很多人还是搞不清。今天我就来给你透露 内部消息… · 2026/11/7 10:06:00

双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试
双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/5 10:27:59

STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析
STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/5 10:28:03

DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案
DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/6 10:29:23

澳洲水电工证考试:证书过期了不知道怎么复审延期?电子证书怎么弄?
澳洲水电工证考试:证书过期了不知道怎么复审延期?电子证书怎么弄?

澳洲水电工证考试:证书过期了不知道怎么复审延期?电子证书怎么弄? 证书过期了不知道怎么复审延期?别慌,很多人在拿到【澳洲水电工证考试】的电子证书后,一不小心就忽略了复审时间,结果证书失效,工作受阻,甚至被单位追责。今天就从【澳洲水电工证考试… · 2026/11/7 0:00:41

电工作业提示版通过率揭秘:怎么考才能一次过?
电工作业提示版通过率揭秘:怎么考才能一次过?

电工作业提示版通过率揭秘:怎么考才能一次过? 怕考不过白交培训费?别急,今天我就从驻马店应届工程类毕业生的视角,带你全面了解电工作业提示版的考试流程、备考要点和真实通过率,帮你少走弯路、提高一次通过率。… · 2026/11/7 0:00:41

电工证年审报名千万别踩坑 外省证转过来要搞清这几点
电工证年审报名千万别踩坑 外省证转过来要搞清这几点

电工证年审报名千万别踩坑 外省证转过来要搞清这几点 之前考的证在外省能不能转过来?这个问题是很多电工从业者最关心的,特别是像你这样在商丘从事公路工程的人员,经常需要跨省流动,证书的 有效性 和 可迁移性… · 2026/11/7 0:00:41

双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试
双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/5 10:27:59

STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析
STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/5 10:28:03

DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案
DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/6 10:29:23

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码