DevFoxx Markdown Converter
Professional Markdown to PDF/PNG/JPG converter with advanced features including themes, watermarks, headers/footers, and more.
✨ Features
Core Conversion
- 🎯 Multiple Output Formats: PDF, PNG, JPG, and HTML
- 📁 Batch Convert Folder: Convert entire folders while preserving structure
- 🔄 Merge Multiple Files: Combine multiple Markdown files into a single PDF
- 🖱️ Context Menu Integration: Right-click on files and folders for quick access
Advanced Styling
- 🎨 5 CSS Themes: Choose from Default, Dark, Professional, Minimal, or GitHub-flavored themes
- 💧 Watermark Support: Add text watermarks with customizable opacity, rotation, and position
- 📄 Headers & Footers: Custom page headers and footers with page numbers
- 📊 Table of Contents: Auto-generate clickable TOC from document headers
Customization
- 📏 Page Size & Orientation: Support for A4, Letter, Legal, A5, Custom sizes in portrait or landscape
- 🗜️ Quality Control: Adjust PDF quality and JPEG compression for optimal file size
- ⚙️ 21+ Configuration Options: Fine-tune every aspect of conversion
- 🎯 Syntax Highlighting: Beautiful code block rendering with highlight.js
🚀 Usage
Convert Single File:
- Right-click any
.md file in Explorer
- Choose format: Convert Markdown to PDF/PNG/JPG/HTML
- File created in same directory
Batch Convert Folder:
- Right-click any folder in Explorer
- Select "Convert Markdown Folder (Batch)"
- New folder created with
_converted suffix
Merge Multiple Files:
- Open Command Palette (
Ctrl+Shift+P)
- Run "Merge Markdown Files to PDF"
- Select multiple
.md files
- Single PDF created with all content
Advanced Usage: Command Palette
Press Ctrl+Shift+P (or Cmd+Shift+P on Mac) and run:
- Convert Markdown to PDF - Convert to PDF format
- Convert Markdown to PNG - Convert to PNG image
- Convert Markdown to JPG - Convert to JPG image
- Convert Markdown to HTML - Convert to HTML file
- Convert Markdown (Use Settings) - Use configured default format
- Convert Markdown Folder (Batch) - Batch convert entire folder
- Merge Markdown Files to PDF - Merge multiple files into one PDF
Folder Structure Preservation
my-docs/
├── README.md
├── guide/
│ ├── intro.md
│ └── advanced.md
└── api.md
After conversion:
my-docs_converted/
├── README.pdf
├── guide/
│ ├── intro.pdf
│ └── advanced.pdf
└── api.pdf
⚙️ Configuration
Access settings via File > Preferences > Settings and search for "Markdown Batch Converter".
Output Settings
- Output Format:
pdf, png, jpg, or html (default: pdf)
- Output Folder Suffix: Suffix for batch conversion folders (default:
_converted)
Theme & Styling
- CSS Theme: Choose from 5 professional themes:
default - Clean modern theme with light background
dark - Dark theme optimized for dark mode viewing
professional - Professional business style with serif fonts
minimal - Minimal clean design with Helvetica
github - GitHub-flavored markdown style
- Display Header/Footer: Enable custom headers and footers (default:
false)
- Header Template: HTML template for page headers
- Footer Template: HTML template for footers (default shows page numbers)
- Supports:
<span class="pageNumber"></span>, <span class="totalPages"></span>, <span class="date"></span>, <span class="title"></span>
Watermark
- Enable Watermark: Add watermark overlay (default:
false)
- Watermark Text: Text to display (default:
"DRAFT")
- Watermark Opacity: Transparency level 0-1 (default:
0.3)
- Watermark Rotation: Rotation angle -180 to 180 (default:
-45)
- Watermark Position:
center, top-left, top-right, bottom-left, bottom-right
Page Settings
- Page Size:
A4, Letter, Legal, A5, or Custom
- Page Orientation:
portrait or landscape
- Custom Width: Width for custom size (e.g.,
"8.5in", "210mm")
- Custom Height: Height for custom size (e.g.,
"11in", "297mm")
Quality & Optimization
- PDF Quality:
high (100%), medium (75%), or low (50%)
- JPEG Quality: 0-100 for JPG output (default:
90)
Table of Contents
- Enable TOC: Auto-generate table of contents (default:
false)
- TOC Title: Title for the TOC (default:
"Table of Contents")
- TOC Position:
beginning or end of document
Example Configuration
{
"markdownBatchConverter.outputFormat": "pdf",
"markdownBatchConverter.cssTheme": "professional",
"markdownBatchConverter.enableWatermark": true,
"markdownBatchConverter.watermarkText": "CONFIDENTIAL",
"markdownBatchConverter.displayHeaderFooter": true,
"markdownBatchConverter.footerTemplate": "<div style='font-size:10px; text-align:center; width:100%;'>Page <span class='pageNumber'></span> of <span class='totalPages'></span></div>",
"markdownBatchConverter.pageSize": "A4",
"markdownBatchConverter.pdfQuality": "high",
"markdownBatchConverter.enableTOC": true
}
📋 Requirements
- VS Code 1.106.1 or higher
- Puppeteer (automatically installed) - downloads Chromium on first use
- Node.js 22.x or higher
🔧 Known Issues
- PDF viewer in VS Code may show errors - PDFs work fine in external viewers
- Large batches may take time - progress indicator shows current status
- Complex Markdown tables require proper formatting
📝 Release Notes
0.0.5 (Latest)
Major Feature Release:
- ✨ Added 5 CSS themes for professional styling
- 🔄 Merge multiple markdown files into single PDF
- 📄 Custom headers and footers with page numbers
- 💧 Watermark support with full customization
- 📏 Custom page sizes and orientation
- 🗜️ PDF quality and compression control
- 📊 Auto-generated Table of Contents
- 🎯 Syntax highlighting for code blocks
- 📈 Enhanced batch conversion with progress tracking
- 💾 Preset system for saving conversion settings
0.0.4
- Added separate format commands (PDF/PNG/JPG/HTML)
- Improved context menu integration
- Better PDF rendering settings
0.0.3
- Context menu integration
- Improved error handling
0.0.2
- Added batch folder conversion
- Folder structure preservation
0.0.1
- Initial release
- Basic PDF/PNG/JPG conversion
🤝 Contributing
Issues and pull requests welcome at GitHub repository.
📄 License
MIT License - see LICENSE file for details.
🙏 Acknowledgments
- Puppeteer team for the excellent headless browser
- VS Code extension API team
- All contributors and users
Enjoy converting your Markdown files! 🚀
| |