libharu (Haru Free PDF Library) is a cross-platform, open-source C library for programmatically generating PDF files. It provides a comprehensive API covering document creation, page management, text and graphics drawing, image embedding (PNG, JPEG, raw), font handling (Type1, TrueType, CJK), annotations, outlines, encryption, PDF/A conformance, and 3D U3D support. The library is designed as a monolithic C library with a clean object system, custom memory manager, and stream abstraction for I/O. It is used via a C API and has bindings for Python, Ruby, C#, VB.NET, Delphi, FreeBASIC, and others. The codebase is mature but shows its age with some incomplete features (e.g., several PDF operators marked 'not implemented'), manual memory management, and a coding style from the early 2000s. However, it remains functional and is actively maintained with recent commits and CI via GitHub Actions. External dependencies are minimal: zlib (required for compression) and libpng (optional for PNG image loading). The library is suitable for embedding in applications that need to generate PDFs without external tools.
This repository is a book project titled 'Metaprogramming: Multi-paradigm approach in Software Engineering' by Timur Shemsedinov. It contains extensive educational content in multiple languages (English, Russian, Czech, Ukrainian, German) stored as Markdown files. The repository includes a Node.js build script that uses pdfmake to generate PDF versions of the book from the Markdown sources. The build system is simple but well-structured, leveraging metavm for configuration and pdfmake for PDF generation. The book covers programming paradigms, data structures, algorithms, and software engineering concepts with code examples in JavaScript, Python, C, and other languages. This is primarily a content repository with a build tool, not a reusable software library or data pipeline.
TCPDF is a PHP library for programmatic PDF generation, originally a monolithic single-file engine. The current version (7.0.7) is a compatibility facade that delegates all rendering to the modern `tecnickcom/tc-lib-pdf` engine, preserving the legacy 291-method public API while the internal engine is replaced. The library is explicitly deprecated and in maintenance-only mode; users are encouraged to migrate to `tc-lib-pdf` directly. It provides a comprehensive set of features for creating PDF documents: text and HTML rendering, images, barcodes (1D and 2D), forms, digital signatures, encryption, PDF/A compliance, and more. The codebase includes a rich test suite (PHPUnit) with a reusable base test class, a smoke test runner for all 68 example scripts, and a method-mapping tool that generates the authoritative documentation of delegation status. The deposit is a library, not a standalone application, and is intended to be integrated into PHP applications via Composer.