kdp-book-generator
Version:
Generate KDP-compliant PDFs and EPUBs from Markdown for Amazon book publishing
51 lines • 1.64 kB
TypeScript
import { BookConfig, ParsedBook } from '../types';
/**
* Options for PDF generation
*/
export interface PDFOptions {
/** Output path for the generated PDF file */
outputPath: string;
/** Enable debug mode for additional logging */
debug?: boolean;
}
/**
* Generator for creating KDP-compliant PDFs from parsed Markdown content
*
* Features:
* - Uses Playwright (Chromium) for accurate PDF rendering
* - Automatic page size configuration based on book format
* - Font embedding for print compatibility
* - Proper margin handling for KDP requirements
* - Support for bleed and page numbers
*/
export declare class PDFGenerator {
private styleGenerator;
private browser;
constructor();
/**
* Generate a PDF from parsed book content
*
* @param parsedBook - Parsed book structure from MarkdownParser
* @param config - Book configuration including format, margins, and typography
* @param options - PDF generation options including output path
* @throws {Error} If PDF generation fails
*
* @example
* ```typescript
* const generator = new PDFGenerator();
* await generator.generatePDF(parsedBook, config, {
* outputPath: 'output.pdf',
* debug: true
* });
* ```
*/
generatePDF(parsedBook: ParsedBook, config: BookConfig, options: PDFOptions): Promise<void>;
private generateHTML;
private generateFontImports;
private generateTitlePage;
private generateTableOfContents;
private processContent;
private convertToPixels;
close(): Promise<void>;
}
//# sourceMappingURL=pdf-generator.d.ts.map