Вопрос или проблема
Я ищу лучший компонент для генерации HTML в PDF через app_service или функцию, размещенную в Azure. У нас большой объем PDF для генерации, в среднем 2000 в день, но это число увеличивается с каждым месяцем. Поэтому мы ищем лучшее сочетание производительности и возможности проектировать наши PDF, обеспечивая приемлемый внешний вид. Наконец, размер каждого файла всегда составляет от 30 до 80 кБ.
Syncfusion Essential PDF поддерживает преобразование HTML в PDF и может быть развернут в Azure
// Инициализация конвертера HTML в PDF
HtmlToPdfConverter htmlConverter = new HtmlToPdfConverter(HtmlRenderingEngine.WebKit);
WebKitConverterSettings webKitSettings = new WebKitConverterSettings();
// Назначение настроек WebKit для конвертера
htmlConverter.ConverterSettings = webKitSettings;
// Преобразование URL в PDF
PdfDocument document = htmlConverter.Convert(url);
// Сохранение документа.
document.Save("Sample.pdf");
document.Close();
Весь набор контролов доступен бесплатно (в том числе и для коммерческих приложений) через программу лицензионного сообщества, если вы соответствуете условиям (менее 1 миллиона долларов США дохода). Лицензия сообщества представляет собой полный продукт без ограничений или водяных знаков.
Примечание: Я работаю в Syncfusion.
Ответ или решение
Когда речь заходит о конвертации HTML в PDF в Azure app_service или Azure Functions, для вашего сценария важны несколько ключевых факторов: производительность, масштабируемость и качество оформления PDF-документов. Вы создали задачу по генерации приблизительно 2000 PDF-документов в день, и это число постепенно увеличивается. Таким образом, грамотный подбор инструмента, который отвечает вашим требованиям, имеет стратегическое значение.
Первое и очевидное решение — использовать Syncfusion Essential PDF, о котором вы уже упомянули. Это решение поддерживает деплой в Azure и предлагает возможность преобразования HTML в PDF. Один из важных аспектов — это открытие доступа к полной линейке продуктов через программу Community License, что может дать значительное преимущество для небольших предприятий с доходом менее 1 миллиона долларов в год.
Syncfusion предлагает возможность использовать энжен рендеринга WebKit, который зарекомендовал себя как надёжный инструмент для генерации PDF с высокой точностью в отображении HTML. Это особенно актуально в вашем случае, когда важно сохранить визуальную составляющую и обеспечить консистенцию внешнего вида документов при высоких объемах данных.
Оценка возможностей Syncfusion для вашей задачи:
-
Производительность: Обработка значительного объема конвертаций требует оптимизированного процесса. WebKitConverterSettings в сочетании с Azure Functions может предложить необходимую скорость и масштабируемость, что позволяет обрабатывать до 2000 PDF-документов в день.
-
Качество оформления: Важным аспектом является сохранение «приемлемого внешнего вида». Syncfusion позволяет гибко настраивать PDF, чтобы ваши документы выглядели профессионально и привлекательно.
-
Масштабируемость: С ростом числа генерируемых документов вам может понадобиться гибко масштабировать ресурсы, чем отлично управляет платформа Azure.
-
Стоимость: С бесплатной лицензией для небольших компаний Syncfusion предоставляет значительные возможности без дополнительных расходов, что идеально подходит для развития бизнеса в условиях ограниченного бюджета.
Алгоритм внедрения
-
Настройка Azure Functions: Разверните Azure Functions с конфигурациями для высокой нагрузки. Это позволит обрабатывать запросы асинхронно и сократит время отклика системы на каждый конверсионный процесс.
-
Интеграция с Syncfusion: Имплементируйте Syncfusion и настройте параметры WebKitConverterSettings в соответствии с вашими требованиями. Убедитесь, что все значения форматирования и настройки соответствуют спецификациям вашего бизнеса.
-
Оптимизация и тестирование: Проведите тестирование производительности и качества генерируемых PDF на больших объемах данных, чтобы убедиться, что выбранное решение соответствует вашим ожиданиям.
-
Мониторинг и масштабирование: Используйте инструмент Azure Monitor для регулярного контроля работы функций и своевременного масштабирования ресурсов в зависимости от потребностей.
Взвесив все преимущества применения Syncfusion в сочетании с возможностями Azure, это решение выглядит весьма перспективно для вашего проекта. Такой подход не только обеспечит высокое качество выходных PDF-документов, но и поддержит эффективность процесса в условиях увеличивающейся нагрузки.