Фреймворк для документации на Nuxt: он создаёт сайты из Markdown-файлов с компонентами Vue.
Lulzx/tinypdf
Минималистичная TypeScript-библиотека без зависимостей для создания настоящих PDF-файлов с текстом, фигурами, линиями, JPEG-изображениями и ссылками.
- Звёзды
- 1,923
- Форки
- 76
- Открытые issues
- 0
- Последний коммит
- 2 месяца назад
Что это?
tinypdf — небольшая библиотека для создания PDF на TypeScript и JavaScript. У неё нет зависимостей, а весь код занимает менее 400 строк и около 3,3 КБ. Библиотека намеренно не поддерживает пользовательские шрифты, PNG/SVG, формы, шифрование и конвертацию HTML в PDF: её задача — размещать на странице текст и изображения.
Документы создаются через API с callback-функциями: вы создаёте страницу, добавляете на неё текст, прямоугольники, линии, JPEG-изображения и кликабельные ссылки, а затем вызываете build(), чтобы получить Uint8Array, или buildStream(), чтобы получить ReadableStream для больших файлов. Вспомогательная функция markdown() преобразует простой Markdown с заголовками, списками и разделителями в PDF с разбивкой по страницам, а measureText() возвращает ширину текста в пунктах.
Проект подойдёт для создания счетов, квитанций, отчётов, билетов и сертификатов с фиксированным макетом, где достаточно текста шрифтом Helvetica. Для Unicode-шрифтов и более сложных возможностей PDF в README рекомендуются jsPDF или pdf-lib.
Ключевые возможности
- 01Рисует текст шрифтом Helvetica с настраиваемыми размером, цветом в hex-формате и выравниванием.
- 02Добавляет на страницы залитые прямоугольники, линии и JPEG-изображения.
- 03Создаёт кликабельные ссылки с необязательным подчёркиванием.
- 04Поддерживает несколько страниц с пользовательскими размерами.
- 05Преобразует простой Markdown в PDF с разбивкой по страницам.
- 06Передаёт большие документы потоком через buildStream().
Сценарии использования
- Создание счетов и квитанций с фиксированным макетом.
- Создание билетов на мероприятия или сертификатов с логотипами и подписями.
- Экспорт данных в PDF из приложений на Node, Bun или серверном JavaScript.
- Отправка PDF в HTTP-ответах без добавления тяжёлых зависимостей.
Быстрый старт
- 1
Установите пакет из npm
npm install tinypdf - 2
Импортируйте pdf, создайте документ, добавьте страницу с текстом и фигурами, а затем запишите файл
- 3
Запустите любой пример с помощью Bun
bun examples/executive-report.ts
Что важно знать
- Для текста доступен только встроенный шрифт Helvetica с кодировкой WinAnsi; Unicode и пользовательские шрифты не поддерживаются.
- Поддерживаются только изображения JPEG; PNG, GIF и SVG не поддерживаются.
- Такие функции, как формы, шифрование, сжатие и преобразование HTML в PDF, не включены.
Темы
Частые вопросы
- Что такое tinypdf?
- Минималистичная TypeScript-библиотека без зависимостей для создания настоящих PDF-файлов с текстом, фигурами, линиями, JPEG-изображениями и ссылками. tinypdf — небольшая библиотека для создания PDF на TypeScript и JavaScript. У неё нет зависимостей, а весь код занимает менее 400 строк и около 3,3 КБ. Библиотека намеренно не поддерживает пользовательские шрифты, PNG/SVG, формы, шифрование и конвертацию HTML в PDF: её задача — размещать на странице текст и изображения.
- tinypdf можно использовать бесплатно? Какая у него лицензия?
- tinypdf распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- tinypdf всё ещё поддерживается?
- Обновлялся за последние 6 месяцев. Последний коммит в tinypdf — 13 авг. 2026 г..
- Для чего можно использовать tinypdf?
- Создание счетов и квитанций с фиксированным макетом. Создание билетов на мероприятия или сертификатов с логотипами и подписями. Экспорт данных в PDF из приложений на Node, Bun или серверном JavaScript. Отправка PDF в HTTP-ответах без добавления тяжёлых зависимостей.
- Как установить tinypdf?
- Установите пакет из npm: npm install tinypdf Импортируйте pdf, создайте документ, добавьте страницу с текстом и фигурами, а затем запишите файл Запустите любой пример с помощью Bun: bun examples/executive-report.ts
- Где скачать tinypdf?
- Исходный код и инструкции по установке — на GitHub: https://github.com/Lulzx/tinypdf
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Парсер документов с открытым исходным кодом: преобразует PDF, файлы Office, HTML и другие форматы в структурированные данные для генеративных AI-пайплайнов.
Библиотека на Rust и CLI для определения, содержит ли PDF текст или сканы, и преобразования текстовых PDF в чистый Markdown без OCR.
Платформа для электронной подписи документов с открытым исходным кодом — альтернатива DocuSign, которую можно развернуть на своих серверах и которая использует подписи PDF.
Быстрый локальный парсер PDF и документов на Rust: извлекает текст с координатами блоков, поддерживает Tesseract или HTTP OCR и выдаёт Markdown, JSON или обычный текст.
Правила вёрстки и шаблоны, с помощью которых AI-агенты создают документы в PDF, PNG и редактируемом PowerPoint.