場合によっては、高解像度 (HD) または Retina スクリーンショットを作成したい場合があります。 これらの高解像度スクリーンショットは解像度が向上していますが、速度が低下し、サイズが大きくなるとさらに遅くなるため、あまり大きな画像を作成しないことをお勧めします。 そのため、スクリーンショットをレンダリングする機会を与えるために遅延を指定することも必要になるでしょう。
次のコードは、HD パラメーターを true に設定して、各言語で高解像度のスクリーンショットを作成する方法を示しています。 これにより、画像の幅と高さが XNUMX 倍になり、標準のスクリーンショットの解像度が XNUMX 倍になり、高解像度の画像が作成されます。 ただし、それは逆効果です 幅と高さを-1以外に設定します これにより、画像が再び縮小されてしまうためです。
GrabzItClient grabzIt = new GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret"); ImageOptions options = new ImageOptions(); options.HD = true; options.OutputWidth = -1; options.OutputHeight = -1; grabzIt.URLToImage("https://www.bbc.co.uk", options); grabzIt.SaveTo("images/result.jpg");
GrabzItClient grabzIt = new GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret"); ImageOptions options = new ImageOptions(); options.setHd(true); options.setWidth(-1); options.setHeight(-1); grabzIt.URLToImage("https://www.bbc.co.uk", options); grabzIt.SaveTo("images/result.jpg");
<script src="https://cdn.jsdelivr.net/npm/@grabzit/js@3.5.2/grabzit.min.js"></script>
<script>
GrabzIt("Sign in to view your Application Key").ConvertURL("https://www.bbc.co.uk",
{"hd":1,"width":-1,"height":-1}).Create();
</script>
var grabzit = require('grabzit'); var client = new grabzit("Sign in to view your Application Key", "Sign in to view your Application Secret"); var options = {"hd":true,"width":"-1","height":"-1"}; client.url_to_image("https://www.bbc.co.uk", options); client.save_to("images/result.jpg", function (error, id){ if (error != null){ throw error; } });
$grabzIt = GrabzItClient->new("Sign in to view your Application Key", "Sign in to view your Application Secret"); $options = GrabzItImageOptions->new(); $options->hd(1); $options->width(-1); $options->height(-1); $grabzIt->URLToImage("https://www.bbc.co.uk", $options); $grabzIt->SaveTo("images/result.jpg");
$grabzIt = new \GrabzIt\GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret"); $options = new \GrabzIt\GrabzItImageOptions(); $options->setHD(true); $options->setWidth(-1); $options->setHeight(-1); $grabzIt->URLToImage("https://www.bbc.co.uk", $options); $grabzIt->SaveTo($filepath);
grabzIt = GrabzItClient.GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret") options = GrabzItImageOptions.GrabzItImageOptions() options.hd = True options.width = -1 options.height = -1 grabzIt.URLToImage("https://www.bbc.co.uk", options) grabzIt.SaveTo("images/result.jpg")
https://api.grabz.it/services/convert?key=Sign in to view your Application Key&format=jpg&hd=1&width=-1&height=-1&url=https%3A%2F%2Fwww.bbc.co.uk
grabzIt = GrabzIt::Client.new("Sign in to view your Application Key", "Sign in to view your Application Secret") options = GrabzIt::ImageOptions.new() options.hd = true options.width = -1 options.height = -1 grabzItClient.url_to_image("https://www.bbc.co.uk", options) grabzItClient.save_to("images/result.jpg")
左側は標準のスクリーンショットの例、右側は上記のコードによって生成された高解像度のスクリーンショットで、どちらのスクリーンショットも同じ高さです。
ブラウザの幅より大きい幅を指定することで、さまざまなサイズの高解像度のスクリーンショットを作成することもできます。 次に、GrabzIt はブラウザを拡大縮小して、画像の拡大を停止します。 ただし、この方法で高解像度のスクリーンショットを作成したときに測定が行われます。 不正確ですそのため、このモードではフルレングスのスクリーンショットが必ずしも完璧なサイズまたはスケールにならないことがあります。
この方法を使用して正しくスケールされた高解像度画像を作成する際に問題が発生する場合は、元のブラウザーのサイズの 2 倍、3 倍、または 4 倍の画像の幅と高さを使用してみてください。
このモードは、要素をターゲットにする場合にも正しく機能しません。 要素をターゲットにしたい場合は、上記のように HD パラメータを設定することをお勧めします。