网淘吧来吧,欢迎您!

返回首页 微信
微信
手机版
手机版

Pdf Generator

2026-03-27 新闻来源:网淘吧 围观:15
电脑广告
手机广告

何时使用

用户需要创建、生成或导出PDF文档。代理程序处理从多种来源(Markdown、HTML、JSON、模板)生成文档、格式设置、样式设计以及批量处理。

范围

本技能仅:

  • 提供PDF生成的代码模式和实现指导
  • 解释工具选择、打印用CSS和文档结构
  • 展示常见文档类型的参考示例

本技能绝不:

  • 直接执行代码或生成文件
  • 进行网络请求
  • 访问用户工作目录之外的文件

所有代码示例均为供用户实现的参考模式。

快速参考

主题文件
工具选择tools.md
文档类型templates.md
高级操作advanced.md

核心规则

1. 选择合适的工具

源格式最佳工具原因
Markdownpandoc原生支持、目录、模板
HTML/CSSweasyprint最佳的CSS支持,无需LaTeX
数据/JSONreportlab可编程、精确控制
简单文本fpdf2轻量级、快速

默认推荐:对于大多数基于HTML的文档,推荐使用 weasyprint。

2. 先结构后样式

# CORRECT: semantic structure
html = """
<article>
  <header><h1>Report Title</h1></header>
  <section>
    <h2>Summary</h2>
    <p>Content...</p>
  </section>
</article>
"""

# WRONG: style-first approach
html = "<div style='font-size:24px'>Report Title</div>"

3. 明确处理分页

/* Force page break before */
.new-page { page-break-before: always; }

/* Keep together */
.keep-together { page-break-inside: avoid; }

/* Headers never orphaned */
h2, h3 { page-break-after: avoid; }

4. 始终设置元数据

# Example pattern for weasyprint
html = """
<html>
<head>
  <title>Document Title</title>
  <meta name="author" content="Author Name">
</head>
...
"""

5. 使用打印优化的CSS

@media print {
  body {
    font-family: 'Georgia', serif;
    font-size: 11pt;
    line-height: 1.5;
  }
  
  @page {
    size: A4;
    margin: 2cm;
  }
  
  .no-print { display: none; }
}

6. 验证输出

生成任何PDF后:

  1. 检查文件大小(0字节表示失败)
  2. 打开并验证页数
  3. 验证字体是否正确渲染

常见陷阱

陷阱后果修复方法
缺少字体回退到默认字体使用网页安全字体
绝对图像路径图像缺失使用相对路径
未设置页面尺寸布局不可预测设置@page { size: A4; }
大型图像文件体积巨大使用前进行压缩

安全与隐私

此为参考技能。它仅提供模式和指导。

数据保留在本地:

  • 所有PDF生成都在用户设备上进行
  • 不会向外发送数据

此技能不会:

  • 执行代码或创建文件
  • 发起网络请求
  • 访问系统文件

反馈

  • 如果对您有用:clawhub star pdf-generator
  • 保持更新:clawhub sync
免责申明
部分文章来自各大搜索引擎,如有侵权,请与我联系删除。
打赏
文章底部电脑广告
手机广告位-内容正文底部
上一篇:Search X 下一篇:Daily Digest

相关文章

您是本站第287765名访客 今日有200篇新文章/评论