Pdf To Ppt

v1.0.0

Convert PDF files to PowerPoint presentations via intermediate image rendering. Created collaboratively with 贾维斯 (AI assistant) by Hugo. Use when working wit...

1· 132·1 current·1 all-time

Install

OpenClaw Prompt Flow

Install with OpenClaw

Best for remote or guided setup. Copy the exact prompt, then paste it into OpenClaw for jvtop/pdf-to-ppt.

Previewing Install & Setup.
Prompt PreviewInstall & Setup
Install the skill "Pdf To Ppt" (jvtop/pdf-to-ppt) from ClawHub.
Skill page: https://clawhub.ai/jvtop/pdf-to-ppt
Keep the work scoped to this skill only.
After install, inspect the skill metadata and help me finish setup.
Use only the metadata you can verify from ClawHub; do not invent missing requirements.
Ask before making any broader environment changes.

Command Line

CLI Commands

Use the direct CLI path if you want to install manually and keep every step visible.

OpenClaw CLI

Bare skill slug

openclaw skills install pdf-to-ppt

ClawHub CLI

Package manager switcher

npx clawhub@latest install pdf-to-ppt
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Benign
high confidence
Purpose & Capability
The skill name/description match the included script: it renders PDF pages to images (PyMuPDF) and assembles those images into a .pptx (python-pptx). Required libraries are exactly those declared in SKILL.md and are proportionate to the stated purpose.
Instruction Scope
Runtime instructions stay within scope (run the provided script on a local PDF, produce images and a PPT). Minor mismatch: SKILL.md mentions providing a PDF password via environment variable “if supported”, but the shipped script does not accept or read any password env var or password argument. Otherwise the instructions do not ask the agent to read unrelated files, contact external endpoints, or exfiltrate data.
Install Mechanism
There is no install spec (instruction-only), and the included Python script is local. Dependencies are typical Python packages (PyMuPDF, python-pptx) and are installed via pip per the documentation — no remote arbitrary downloads or obscure installers are used.
Credentials
The skill declares no required environment variables and the script does not read any secrets. The only inconsistency is the SKILL.md mention of supplying a PDF password via environment variable 'if supported' even though the script offers no such mechanism; this is a documentation mismatch rather than a secret request.
Persistence & Privilege
The skill does not request persistent or elevated privileges (always:false, user-invocable:true). It does not modify other skills or global agent settings. Normal autonomous invocation is allowed by platform defaults but does not introduce new risk here.
Assessment
This skill appears to do exactly what it says: convert PDFs to PPTX by rendering pages as images. Before installing/using it: 1) be prepared to install PyMuPDF and python-pptx into the Python environment you will run it in; 2) note the script writes intermediate image files to disk (defaults to an images/ subfolder next to the PDF) and large PDFs or high zoom settings can consume significant RAM and disk; 3) the README mentions supplying a PDF password via environment variable, but the included script does not implement that — if you need to handle password-protected PDFs, either modify the script to accept a password or use a tool that supports it; 4) there is no network activity or credential exfiltration in the code, but always run third-party scripts in an isolated environment if you are unsure.

Like a lobster shell, security has layers — review code before you run it.

latestvk97e7vbtd21c0r2mpvb5t0mh0d83s6r0
132downloads
1stars
1versions
Updated 1mo ago
v1.0.0
MIT-0

PDF to PPT Conversion Skill

This skill converts PDF files into PowerPoint presentations by first rendering each PDF page as a high-quality image, then assembling those images into a PPT where each image fills a slide. This approach works well for PDFs that are primarily visual (e.g., design drawings, presentations scanned to PDF, etc.) and preserves the visual layout faithfully.

When to Use

Use this skill when you need to:

  • Convert a PDF document into an editable PowerPoint presentation.
  • Preserve the exact visual layout of each PDF page (text, images, vectors) as slide backgrounds.
  • Work with PDFs that are not easily editable via direct text extraction (e.g., complex layouts, designer files).
  • Batch-convert multiple PDFs to PPT format.

Core Rules

1. Input PDF Requirements

  • The PDF should be text-based or vector-based for best results. Scanned PDFs will be converted as images (which is still valid for this skill).
  • Ensure the PDF is not password-protected, or provide the password via environment variable if supported.

2. Image Rendering Quality

  • The skill renders PDF pages to images using a configurable zoom factor (default 2.0, which yields ~144 DPI from default 72 DPI).
  • Higher zoom values increase image quality and file size but improve text readability in the resulting PPT.
  • For text-heavy PDFs where you need selectable text in PPT, consider direct PDF→PPT conversion tools (like LibreOffice) instead.

3. Output PPT Characteristics

  • Each PDF page becomes one slide.
  • Slide size defaults to 16:9 (width=13.33in, height=7.5in) but can be customized.
  • Images are stretched to fill the slide; aspect ratio is not locked (to ensure full coverage). If aspect ratio preservation is critical, edit the script to center and crop.
  • The generated PPT uses a blank layout for each slide, placing the image as a shape that covers the entire slide.

4. Dependencies

  • Python packages: PyMuPDF (fitz) and python-pptx.
  • These are installed automatically when the skill is first used via the provided install command, or you can install them manually.

Installation

To install this skill from a local path (after copying to your skills folder), you can use:

clawhub install /path/to/pdf-to-ppt

Or if you have cloned the skill repository:

clawhub install pdf-to-ppt

Usage

Basic Conversion

python3 scripts/pdf_to_ppt.py input.pdf

This will:

  • Create an images/ subdirectory next to the input PDF (or use a specified directory).
  • Render each PDF page to a PNG image in that folder.
  • Generate a PPT file with the same base name as the input PDF, appended with .pptx, in the same directory as the input.

Advanced Options

python3 scripts/pdf_to_ppt.py input.pdf \
    --img-dir /path/to/images \
    --output output.pptx \
    --zoom 3.0 \
    --slide-width-in 16 \
    --slide-height-in 9 \
    --format png

Arguments:

  • input.pdf: Path to the source PDF file (required).
  • --img-dir DIR: Directory to store intermediate images. If not provided, defaults to <pdf_dir>/images/.
  • --output PPTX: Path for the output PPT file. If not provided, defaults to <pdf_basename>.pptx in the same directory as input PDF.
  • --zoom ZOOM: Zoom factor for rendering (default 2.0). Higher = higher DPI.
  • --slide-width-in INCHES: Width of slides in inches (default 13.33 for 16:9 at 7.5in height).
  • --slide-height-in INCHES: Height of slides in inches (default 7.5).
  • --format {png,jpg}: Image format for intermediates (default png).

Example: Convert with Custom Settings

python3 scripts/pdf_to_ppt.py report.pdf \
    --img-dir ./tmp/imgs \
    --output ./presentation.pptx \
    --zoom 2.5 \
    --format jpg

Workflow Tips

  1. Check Image Quality: After conversion, open the generated PPT and review a few slides. If text appears blurry, increase --zoom.
  2. File Size: Higher zoom and PNG format increase both image and final PPT size. Use JPG for smaller files if slight compression artifacts are acceptable.
  3. Post-Processing: The PPT is fully editable in PowerPoint. You can:
    • Add text boxes, shapes, or annotations over the image backgrounds.
    • Replace images with higher-quality versions if needed.
    • Extract individual images via “Save as Picture” if required.
  4. Batch Processing: Wrap the script in a loop for multiple PDFs:
    for pdf in *.pdf; do
        python3 scripts/pdf_to_ppt.py "$pdf"
    done
    

Troubleshooting

  • ModuleNotFoundError for fitz or pptx: Ensure dependencies are installed. Run:
    pip install --break-system-packages PyMuPDF python-pptx
    
    (Add --break-system-packages if using system Python in a restricted environment.)
  • Empty Images: Verify the PDF is not empty and that PyMuPDF can open it. Try opening the PDF in a viewer to confirm it has content.
  • Memory Issues: Very large PDFs with high zoom may consume significant RAM. Process in batches or reduce zoom.

Related Skills

Consider combining with:

  • pdf-tools — for extracting text, merging, splitting PDFs before conversion.
  • powerpoint-pptx — for best practices on editing and styling the resulting PPT.
  • images — if you need to process the intermediate images further.

Feedback

If you find this skill useful, consider starring it on ClawHub: clawhub star pdf-to-ppt

For issues or enhancements, please refer to the skill’s source repository.


This skill was created to automate PDF → image → PPT conversion for visual-rich documents.

Comments

Loading comments...