問題タブ [webpage-screenshot]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
393 参照

javascript - サーバーAはウェブサイトBのスクリーンショットを作成する必要があります

別のドメイン/サーバーの別のページからスクリーンショットを作成し、現在のページに表示したいと考えています。

iframe でやろうと思ったのですが、ビューポートで問題が発生しました (ページ全体が収まらない、幅 350px など)。私が見つけたソリューションは現在のページのスクリーンショットしか作成しないため、キャンバス HTML5 は使用できません。

PHPで何かが必要だと思います。サードパーティのサービスを見つけましたが、気に入らず、使用したくありません。

サーバーはVPSではない共有ホスティングサーバーのみであるため、WebKitまたはPhantomJSをインストールできません。何をすべきか考えている人はいますか?

0 投票する
3 に答える
1382 参照

cordova - InAppBrowser のスクリーンショット?

PhoneGap で InAppBrowser のスクリーンショットを作成したいと考えています。私はたくさん検索しましたが、何も見つかりませんでした。これは可能ですか?

私のターゲットは: iOS と Android

0 投票する
2 に答える
604 参照

php - PHP で POST データを使用して URL リクエストのスクリーンショットをキャプチャする方法

PHP スクリプトを使用して POST DATA 変数を URL に送信し、URL が HTML 文字列で応答します。ブラウザに表示されている上記の HTML 文字列のスクリーンショットをキャプチャするにはどうすればよいですか。HTMLコンテンツ用とスクリーンショット用の2つのPOSTリクエストを送信する必要がない場合、これが最適なソリューションです。

更新: さらに情報を追加します。私の Web サイトは、他の Web サイトから HTML コンテンツをクロールします (POST データを Web サイトに送信し、その応答を取得します)。HTMLの文字列のみです。さらに、エンドユーザーが見ることができるものとしてブラウザーに表示されるこの応答のスクリーンショットを取得したいと考えています。すべてのアクションはサーバー側で行われます。

0 投票する
1 に答える
2425 参照

ruby - Ruby を使用した Retina クオリティのフルページのスクリーンショット

多くのオプションを試してみましたが、これに対する解決策を見つけるのに苦労しています。

私の理想的な目標は、スクリーンショットができるようになることです

  • 特定の CSS 要素を取得する
  • 要素の高さ全体を取得します (ページの高さよりも長い場合でも)
  • 含まれているアセットが完全に読み込まれるまで待ちます
  • 速い

最初の試行 (chromedriver がインストールされた selenium-webdriver を使用)

Gemfile

App.rb

これはある程度機能しますが、スクリーンショットは最大の高さにトリミングされます (これは Chromedriver の非常に古い問題のようですhttps://code.google.com/p/chromedriver/issues/detail?id=294 )

2 回目の試行 (ポルターガイストを使用して、代わりに phantomjs に切り替えます)

Gemfile

App.rb

これにはさまざまな問題があり、

3 回目の試行 (Capybara を使用して page.save_screenshot(path, :full => true) を利用しようとする)

Gemfile

App.rb

ショートバージョン - これは役に立たない

4度目の挑戦(ワティル使用)

Gemfile

App.rb

これは機能します (Firefox を起動します) が、Retina スクリーンショットを撮る機能について DevicePixelRatio に関して同じ問題があります。

5 回目の試行 (Chrome の使用に戻る)

App.rb

トリミングされたページの問題にまっすぐ戻ります。

理想的には、最新の ChromeDriver v2.12 のモバイル エミュレーション オプションを使用してこれを実現する方法があると思います。

個々のデバイス属性の指定

個々の属性を指定してモバイル エミュレーションを有効にすることもできます。この方法でモバイル エミュレーションを有効にするには、「mobileEmulation」ディクショナリに「deviceMetrics」ディクショナリと「userAgent」文字列を含めることができます。次のデバイス メトリックを「deviceMetrics」ディクショナリで指定する必要があります。 「width」 - デバイスの画面のピクセル単位の幅 「height」 - デバイスの画面のピクセル単位の高さ 「pixelRatio」 - デバイスのピクセル比

https://sites.google.com/a/chromium.org/chromedriver/mobile-emulation

しかし、それを機能させることはできませんでした。

どんな提案でも本当に感謝します!