ボタンをクリックしてからPDF版のページを作成する必要があるため、作業は簡単ではありません。複雑なdom構造であり、多くの要素が絶対的/相対的に配置されており、データは動的にロードされます。PDFの生成を可能にするため、このタスクにPhantom.jsサーバーを使用することを考えましたが、これにはいくつかの問題があります。
- phantomjsは、コンソールから実行するか(PDFの生成はUNIXシステムとWINシステムの両方で使用可能であり、ページから実行できるのはシェルスクリプトのみであるため、ここでは不可能です)、または組み込みサーバーを使用して実行できます。
- サーバーはページを実行しているサーバーとは異なるドメインを持っているため、同一生成元ポリシーの問題が発生します。srcと私のページのhtmlが引数で渡されるので、phantomjsサーバーアドレスでiframeを使用することを考えていましたが、引数が長すぎて413エラーを返します。JSONPはGETリクエスト用に構築されており、引数が長すぎる場合と同じ問題が発生するため、機能しません。
クライアント側で生成することも考えましたが、サイトが複雑なため、ページの適切な表現を取得するのにおそらく何日もかかるでしょう(すべてのポジショニング値をptsに再計算する必要があるため)。一般的なソリューション。
これを解決する方法の他のアイデアはありますか?