Веб-приложение для наложения печати (водяных знаков) на PDF и Word документы с возможностью настройки позиции, прозрачности и других параметров.
- ✅ Загрузка PDF и Word документов
- ✅ Загрузка печати в форматах JPG и PNG
- ✅ Настройка прозрачности печати (10% - 100%)
- ✅ Выбор позиции печати:
- Пользовательские координаты X, Y
- По центру документа
- В углах (верхний/нижний, левый/правый)
- ✅ Выбор страницы для наложения печати
- ✅ Предварительный просмотр позиции
- ✅ Drag & Drop загрузка файлов
- ✅ Современный и отзывчивый интерфейс
- ✅ Автоматическое скачивание результата в PDF
- Node.js (версия 14 или выше)
- npm или yarn
-
Клонируйте репозиторий или скачайте файлы проекта
-
Установите зависимости:
npm install- Запустите сервер:
npm startДля разработки с автоматической перезагрузкой:
npm run dev- Откройте браузер и перейдите по адресу:
http://localhost:3000
- Нажмите "Выбрать файл" в разделе "Загрузить документ" и выберите PDF или Word файл
- Нажмите "Выбрать файл" в разделе "Загрузить печать" и выберите JPG или PNG изображение
- Также поддерживается перетаскивание файлов (drag & drop)
После загрузки обоих файлов появится раздел настроек:
- Позиция печати: Выберите предустановленную позицию или "Пользовательская" для ручной настройки
- X координата: Позиция по горизонтали (в пикселях)
- Y координата: Позиция по вертикали (в пикселях)
- Прозрачность: Настройте прозрачность печати от 10% до 100%
- Номер страницы: Укажите на какой странице разместить печать
В разделе "Предварительный просмотр" вы можете увидеть примерное расположение печати на документе.
Нажмите кнопку "Обработать документ" для создания финального PDF с наложенной печатью.
├── server.js # Основной сервер Express
├── package.json # Зависимости и скрипты
├── public/ # Веб-интерфейс
│ ├── index.html # Главная страница
│ ├── styles.css # Стили
│ └── script.js # JavaScript логика
├── uploads/ # Папка для загруженных файлов (создается автоматически)
├── temp/ # Временные файлы (создается автоматически)
└── README.md # Документация
- Express.js - веб-сервер
- Multer - обработка загрузки файлов
- PDF-lib - работа с PDF документами
- Sharp - обработка изображений
- Mammoth - конвертация Word в PDF
- HTML5 - структура страницы
- CSS3 - стили и анимации
- JavaScript (ES6+) - интерактивность
- Font Awesome - иконки
Загрузка документов и печати
document- файл документа (PDF, DOC, DOCX)stamp- файл печати (JPG, PNG)
Обработка документа с наложением печати
documentPath- путь к документуstampPath- путь к печатиx,y- координаты позицииopacity- прозрачность (0.1 - 1.0)mode- режим позиционированияpage- номер страницы
- Максимальный размер файла: 10MB
- Поддерживаемые форматы документов: PDF, DOC, DOCX
- Поддерживаемые форматы печати: JPG, PNG
- Результат всегда сохраняется в формате PDF
- Валидация типов файлов
- Ограничение размера файлов
- Автоматическая очистка временных файлов
- Безопасная обработка путей к файлам
Для добавления новых функций:
- Установите nodemon для автоматической перезагрузки:
npm install -g nodemon- Запустите в режиме разработки:
npm run devMIT License
При возникновении проблем создайте issue в репозитории проекта или обратитесь к разработчику.