Бесплатная PHP библиотека для конвертации веб-страницы в изображение или PDF
Open Source PHP библиотека, позволяющая разработчикам программного обеспечения конвертировать веб-страницу в изображение или PDF, используя всего несколько строк кода PHP.
В современную цифровую эпоху веб‑разработка и дизайн стали более важными, чем когда-либо. Одним из ключевых аспектов этого процесса является обеспечение того, чтобы веб‑страницы отображались и работали так, как задумано, во всех браузерах и устройствах. Делать скриншоты веб‑страниц и экспортировать их в другие форматы файлов — очень полезный и сложный процесс. Одним из таких инструментов, упрощающих работу разработчиков, является Browsershot. Он предоставляет простой API, позволяющий легко генерировать скриншоты. Он скрывает сложность настройки headless‑браузера и предлагает чистый и интуитивный интерфейс для работы.
Browsershot — популярная PHP библиотека, позволяющая разработчикам программного обеспечения создавать высококачественные скриншоты веб‑страниц и конвертировать их в веб‑страницу, изображение или PDF, используя всего несколько строк кода PHP. Она использует возможности Puppeteer, библиотеки Node.js, разработанной Google, которая управляет экземпляром headless Chrome или Chromium для взаимодействия с веб‑страницами и захвата скриншотов. Разработчики могут легко автоматизировать процесс захвата скриншотов сайтов, экономя значительное время и усилия. Это особенно полезно, когда необходимо захватывать скриншоты множества веб‑страниц или выполнять регулярное визуальное регрессионное тестирование.
Библиотека Browsershot предоставляет широкий набор параметров конфигурации для настройки процесса создания скриншотов. Разработчики могут задавать размер окна просмотра, регулировать задержку перед захватом, определять формат вывода (например, PNG или JPEG), делать скриншоты полной страницы или отдельные элементы веб‑страницы, а также применять пользовательские CSS‑стили к странице перед захватом. Это PHP библиотека, которую легко интегрировать в существующие PHP проекты. Если вы PHP‑разработчик, ищущий эффективный способ автоматизации создания скриншотов, Browsershot определённо стоит изучить.
Начало работы с Browsershot
Рекомендованный и самый простой способ установить Browsershot — использовать Composer, инструмент управления зависимостями для PHP. Пожалуйста, используйте следующую команду для беспроблемной установки.
Установить Browsershot через Composer
composer require spatie/browsershot \nВы также можете установить её вручную; загрузите последние файлы релиза непосредственно из репозитория GitHub.
Генерация изображений через PHP API
Открытая исходная библиотека Browsershot позволяет разработчикам загружать HTML‑файлы и конвертировать их в различные форматы изображений с помощью PHP API. По умолчанию размер скриншота будет соответствовать разрешению, которое пользователь использует на своём рабочем столе, но может быть настроен под их потребности. Библиотека включает множество важных функций, таких как создание скриншота полной страницы, создание серого изображения, установка масштаба устройства, эмуляция мобильного просмотра, отключение JavaScript при захвате страницы, блокировка URL, добавление CSS‑стилей перед скриншотом, вывод изображения напрямую в браузер и многое другое. Следующий пример показывает, как создать серое изображение через PHP API.
Создание серого изображения через PHP API
Browsershot::url('https://example.com')\n ->windowSize(640, 480)\n ->greyscale()\n ->save($pathToImage);\n\n\n\nPDF Generation via PHP Library
\nThe open source Browsershot library makes it easy for software developers to save a web page to a PDF files inside their PHP applications. The will save a pdf if the path passed to the save method has a pdf extension. There are several important features part of the library related to PDF creation, such as specifying the width and the height of the PDF page, setting margins, adding header and footer to PDF, hide the header or footer, add background of HTML page, Landscape orientation support, export specific pages, set the initial page number and many more. The following example shows how software developers can add headers and footers to PDF while generating it from HTML page.
Как добавить заголовки и нижние колонтитулы при генерации PDF с помощью кода PHP?
Browsershot::html($someHtml)\n ->showBrowserHeaderAndFooter()\n ->headerHtml($someHtml)\n ->footerHtml($someHtml)\n ->save('example.pdf');\n\n\n\nHeadless Chrome and Puppeteer Integration
\nBrowsershot utilizes the power of headless Chrome or Puppeteer to render web pages accurately. This ensures that the screenshots generated by Browsershot match the actual appearance of the web page in a browser. Additionally, Browsershot supports both local and remote browsers, giving you the freedom to choose the most suitable setup for your needs. Browsershot leverages headless Chrome or Puppeteer to ensure that the rendered web pages closely match their appearance in a real browser. This guarantees consistent and accurate screenshots, providing reliable visual representation for documentation and testing purposes.