Pdf Generator

👤 ivangdavila 📦 v1.0.1 ⭐ 4.5 ⬇️ 12.3K 下載
📄 辦公效率 免費

📖 技能介紹


name: PDF Generator slug: pdf-generator version: 1.0.1 homepage: https://clawic.com/skills/pdf-generator description: Generate professional PDFs from Markdown, HTML, data, or code. Reports, invoices, contracts, and documents with best practices. metadata: {"clawdbot":{"emoji":"📄","requires":{"bins":[]},"os":["linux","darwin","win32"]}}


When to Use

User needs to create, generate, or export PDF documents. Agent handles document generation from multiple sources (Markdown, HTML, JSON, templates), formatting, styling, and batch processing.

Scope

This skill ONLY: - Provides code patterns and implementation guidance for PDF generation - Explains tool selection, CSS for print, and document structure - Shows reference examples for common document types

This skill NEVER: - Executes code or generates files directly - Makes network requests - Accesses files outside user's working directory

All code examples are reference patterns for the user to implement.

Quick Reference

Topic File
Tool selection tools.md
Document types templates.md
Advanced operations advanced.md

Core Rules

1. Choose the Right Tool

Source Best Tool Why
Markdown pandoc Native support, TOC, templates
HTML/CSS weasyprint Best CSS support, no LaTeX
Data/JSON reportlab Programmatic, precise control
Simple text fpdf2 Lightweight, fast

Default recommendation: weasyprint for most HTML-based documents.

2. Structure Before Style

# 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. Handle Page Breaks Explicitly

/* 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. Always Set Metadata

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

5. Use Print-Optimized 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. Validate Output

After generating any PDF: 1. Check file size (0 bytes = failed) 2. Open and verify page count 3. Verify fonts render correctly

Common Traps

Trap Consequence Fix
Missing fonts Fallback to defaults Use web-safe fonts
Absolute image paths Images missing Use relative paths
No page size Unpredictable layout Set @page { size: A4; }
Large images Huge files Compress before use

Security & Privacy

This is a reference skill. It provides patterns and guidance only.

Data that stays local: - All PDF generation happens on user's machine - No data sent externally

This skill does NOT: - Execute code or make files - Make network requests - Access system files

來源於7w4.net。

Feedback

  • If useful: clawhub star pdf-generator
  • Stay updated: clawhub sync

🤖 AI 評測

這個 Skill 質量較好,內容覆蓋全面,從發票、合同到證書都有現成的模板程式碼可以直接參考使用。工具選擇指南清晰易懂,能幫助快速找到合適的方案。不足是個別示例程式碼有瑕疵,可能需要自己除錯修正;另外缺少一些常見問題的解決方案。總體而言是一款實用的 PDF 生成參考手冊。

📊 多維度評分

適應性4.6
規範性4.6
有效性4.6
可靠性4
可信度4.5

📁 包含檔案 (6 個)

📄 EXTRA_FILES.txt 34 B
📄 SKILL.md 3.3 KB
📄 _meta.json 132 B
📄 advanced.md 4.5 KB
📄 templates.md 8.9 KB
📄 tools.md 2.3 KB