1. 製品
  2.   HTML
  3.   PHP
  4.   Browsershot
 
  

ウェブページを画像またはPDFに変換する無料PHPライブラリ

ソフトウェア開発者が数行のPHPコードでウェブページを画像またはPDFに変換できるオープンソースPHPライブラリ

今日のデジタル時代において、ウェブ開発とデザインはかつてないほど重要になっています。このプロセスの重要な側面のひとつは、ウェブページがさまざまなブラウザやデバイスで意図通りに見え、機能することを保証することです。ウェブページのスクリーンショットを撮り、他のファイル形式にエクスポートすることは非常に有用でありながら複雑な作業です。このようなツールのひとつがBrowsershotで、ソフトウェア開発者が簡単に利用できるように設計されています。シンプルなAPIを提供し、開発者は手間なくスクリーンショットを生成できます。ヘッドレスブラウザの設定の複雑さを抽象化し、クリーンで直感的なインターフェースを提供します。

Browsershotは、数行のPHPコードでウェブページの高品質なスクリーンショットを作成し、ウェブページ、画像、またはPDFに変換できる人気のPHPライブラリです。Googleが開発したNode.jsライブラリPuppeteerの力を活用し、ヘッドレスChromeまたはChromiumブラウザのインスタンスを制御してウェブページと対話し、スクリーンショットを取得します。ソフトウェア開発者はウェブサイトのスクリーンショット取得プロセスを簡単に自動化でき、時間と労力を大幅に節約できます。特に、複数のウェブページのスクリーンショットを取得したり、定期的なビジュアルリグレッションテストを実施したりする際に便利です。

Browsershotライブラリは、スクリーンショット生成プロセスをカスタマイズするための幅広い設定オプションを提供します。開発者はビューポートサイズを設定し、スクリーンショット取得前の遅延を調整し、出力形式(例:PNGまたはJPEG)を定義し、ページ全体のスクリーンショットまたはウェブページ内の特定要素のスクリーンショットを取得し、さらにスクリーンショット取得前にカスタムCSSスタイルを適用できます。これはPHPライブラリであり、既存のPHPプロジェクトに簡単に統合できます。PHP開発者でスクリーンショット生成を効率的に自動化したい方には、Browsershotはぜひ検討すべきものです。

Previous Next

Browsershot の開始方法

Browsershotをインストールする最も推奨され、かつ簡単な方法は、PHP用の依存関係管理ツールComposerを使用することです。スムーズなインストールのために以下のコマンドを使用してください。

ComposerでBrowsershotをインストール

composer require spatie/browsershot 

手動でインストールすることも可能です。最新のリリースファイルはGitHubリポジトリから直接ダウンロードしてください。

PHP APIでの画像生成

オープンソースのBrowsershotライブラリは、ソフトウェア開発者がHTMLファイルをロードし、PHP APIを使用してさまざまな画像ファイル形式に変換できるようにします。デフォルトでは、スクリーンショットのサイズはユーザーのデスクトップ解像度に合わせますが、ニーズに合わせてカスタマイズ可能です。ライブラリには、フルページスクリーンショットの取得、グレースケール画像の作成、デバイススケールの設定、モバイルビューのエミュレーション、ページ取得時のJavaScript無効化、URLブロック、スクリーンショット前のCSSスタイル追加、画像を直接ブラウザに出力するなど、さまざまな重要機能が含まれています。以下の例は、PHP APIを使用してグレースケール画像を作成する方法を示しています。

PHP APIでグレースケール画像を作成

Browsershot::url('https://example.com')
    ->windowSize(640, 480)
    ->greyscale()
    ->save($pathToImage);

PDF Generation via PHP Library

オープンソースのBrowsershotライブラリは、ソフトウェア開発者がPHPアプリケーション内でウェブページをPDFファイルとして保存することを簡単にします。保存メソッドに渡されたパスが.pdf拡張子の場合、PDFが生成されます。PDF作成に関する重要な機能として、PDFページの幅と高さの指定、余白の設定、ヘッダーとフッターの追加、ヘッダーまたはフッターの非表示、HTMLページの背景追加、横長(ランドスケープ)向けサポート、特定ページのエクスポート、開始ページ番号の設定などがあります。以下の例は、HTMLページからPDFを生成しながらヘッダーとフッターを追加する方法を示しています。

Browsershot::html($someHtml) ->showBrowserHeaderAndFooter() ->headerHtml($someHtml) ->footerHtml($someHtml) ->save('example.pdf');

ヘッドレスChromeとPuppeteerの統合

Browsershot 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.

 日本