PlutoBook 0.10.0

good-penguin.png

Состоялся выпуск 0.10.0 библиотеки PlutoBook, предназначенной для рендеринга документов HTML и XML с применением таблицы стилей CSS и распределением элементов по одной или нескольким страницам, которые затем могут быть преобразованы в растровые изображения или документы PDF.

Библиотека использует собственный движок рендеринга (на базе Cairo) и не зависит от таких движков, как Chromium, WebKit или Gecko.

Движок разработан с учётом требований надежности, легковесности и эффективности использования памяти, с использованием современных возможностей C++, таких как std: pmr: monotonic_buffer_resource, для минимизации фрагментации памяти и оптимизации производительности её выделения.

В комплект поставки входят консольные утилиты html2pdf и html2png. Проект написан на языке C++ (стандарт C++20) и распространяется по лицензии MIT.

На базе библиотеки авторами также разрабатывается Python-библиотека PlutoPrint.

Список изменений:

  • Добавлена поддержка верхних и нижних колонтитулов.
  • Добавлена поддержка функций CSS min(), max() и clamp().
  • Добавлена поддержка unicode-range в @font-face для выборочного охвата шрифтов.
  • Добавлена поддержка типа и резервного варианта в функции attr().
  • При выборе шрифта предпочтение отдаётся цветным шрифтам эмодзи.
  • В качестве резервного шрифта используется шрифт с засечками.
  • Корректное распознавание UTF-8 BOM.

>>> Подробности на GitHub

©  Linux.org.ru