Я работаю над проектом с открытым исходным кодом, и мы объединили наш логотип и информацию о цвете в виде HTML+CSS. Цель состоит в том, чтобы настроить CI для рендеринга HTML+CSS в файлы PNG и Webp различного размера (для Android, значок веб-интерфейса и т. д.), чтобы лучше вписать дизайн в типичный процесс разработки. Я ищу утилиту командной строки, которая принимает HTML и CSS и выводит изображение. (желательно с открытым исходным кодом, но если работает на линуксе, хоть через Wine, то и для этого подойдет)
К сожалению, лучший вариант, который я нашел для получения визуализированного изображения (например, png, webp и т. д.), — это сделать снимок экрана веб-браузера с открытым HTML-файлом, но это нелегко автоматизировать.
Существуют надстройки, которые утверждают, что делают снимки экрана, но они значительно меняют цвета в сгенерированном изображении по сравнению с их первоначальным видом, и Pandoc также, похоже, не способен на это.
Это, конечно, странный запрос, но он поможет защитить двоичные файлы от git (что здорово). И, поскольку никто из нас не занимается графическим дизайном, приятно использовать что-то текстовое и не требующее дорогого редактора, как что-то от Adobe.
Я только что понял, что в Firefox тоже есть безголовый режим. И это работает намного лучше, чем pageres:
$ firefox -headless -screenshot https://softwarerecs.stackexchange.com/questions/47039/english-etymology-dictionary-usable-on-windows
*** You are running in headless mode.
$ ls
screenshot.png
Бесплатный, с открытым исходным кодом. Гораздо медленнее, чем пейджеры. Он использует ваш профиль Firefox, хотя я уверен, что есть способ использовать пустой профиль.
PageRes преобразует HTML+CSS в изображение PNG:
https://github.com/sindresorhus/pageres
Он основан на безголовом браузере Webkit PhantomJS.
Инструмент командной строки https://github.com/sindresorhus/pageres-cli .
Бесплатно, все с открытым исходным кодом.
Обычно он работает хорошо и даже немного знает JavaScript, но для сложных веб-сайтов вывод часто не идеален, как показано в демонстрации ниже:
$ pageres https://softwarerecs.stackexchange.com/questions/50269/command-line-utility-for-rendering-htmlcss-to-image
✔ Generated 1 screenshot from 1 url and 1 size
$ ls
'softwarerecs.stackexchange.com!questions!50269!command-line-utility-for-rendering-htmlcss-to-image-1366x768.png'
Вот сгенерированный PNG, как вы можете видеть, он имеет некоторые ошибки:
Отойдите от разработки HTML и используйте один из многих генераторов статических веб-сайтов, таких как Jekyll или Hyde , для создания различных веб-сайтов, включая html, css и изображения для различных целей.
Оба являются бесплатными, с открытым исходным кодом и кросс-платформенными. См. сравнение здесь .
КГ6ЗВП
--window-size=
тоже очень полезный.