Генератор PDF из HTML

Цена договорная
21 января 2022, 12:45 • 4 отклика • 126 просмотров
Необходимо разработать генератор PDF из HTML
Работа только по договору (физ лицо, самозанятый, ИП, юр. лицо).
Предоплата не желательна, но возможна, - в рамках договора.

Предполагается, что в сервис будет сообщаться набор параметров, а также массив строк с HTML-разметкой, каждая из которых должна быть преобразована в файл PDF (или несколько отдельных файлов) и возвращена ответом на запрос, либо файлы сохраняются на сервере (в зависимости от переданных настроек).
Что будем отправлять (JSON):

{
"token": "security string token",
"settings": {
"mod": "описывает, должен ли быть создан один файл, или несколько (на каждый элемент obj.html)",
"method": "признак того, нужно ли 'отдать' файл(ы), либо их нужно сохранить на сервере согласно obj.settings.path",
"path": "пусто или относительный путь на сервере по которому должен быть сохранен файл(ы). Если конечный каталог отсутствует - создаем его"
},
"html": [
"Документ 1: html-разметка, которая может содержать DOM-элементы с указанием 'этот элемент должен быть отдельной страницей с ориентацией Ландшафт' ",
"Документ 2: html-разметка",
"Документ 3: html-разметка",
"Документ 4: html-разметка"
]
}


Требования к программе:
  • работа на сервере linux
  • может быть исполнена на любом ЯП
  • по умолчанию все страницы с ориентацией "Портрет"
  • программа должна быть автономной (работать "сама по себе", либо требовать четкий набор серверного ПО, не требующего лицензий)
  • не должна осуществлять отправку запросов через сеть интернет, т.е. работает исключительно локально на сервере
  • если программа будет требовать запуска/рестарта, необходима возможность автоматического рестарта в случае падения (четкие описания как это реализовать в linux)
  • должна быть доступна по http-протоколу и принимать post-запросы, либо быть доступной локально для запросов из ПО иных ЯП, но с четкими описаниями и примером
  • входящая длина строк не должна быть ограничена искусственно (т.е. html-разметка + вложенные картинки в base64 могут быть очень большой длины, более 10млн. символов)
  • точка входа (API) для сообщения строк с HTML-разметкой
  • поддержка тега break-after для перехода на следующую страницу (либо обсуждаем отдельный механизм разбиения на страницы помимо авто-разбивки по длине контента)
  • поддержка "ориентации страницы", согласно значению которого будет определяться ориентация текущей страницы файла PDF (можно исключить, обсуждаемо)
  • на выходе должен быть получен PDF-файл минимального размера
  • обязательно должна поддерживаться работа с изображениями в base64
  • время обработки программой запроса на среднем современном сервере не должно превышать 1 секунду на 1 Мб входящей разметки
  • программа должна иметь возможность обработки нескольких запросов одновременно
  • конфигуравционный файл поддерживаемых базовых классов CSS (чтобы не было необходимости присваивать свойства каждому элементу dom, отличному от "стандартных")
  • конфигуравционный файл с внутренними настройками программы (токен авторизации, собственный адрес сервера и т.д.)
  • в конечном итоге результат должен соответствовать переданной html-разметке таким образом, как если она будет вписана в html-страницу в блок формата А-4

Предлагайте свою цену откликах или tg vmorsk