有时您可能想要创建高清 (HD) 或视网膜屏幕截图。 这些高清屏幕截图的分辨率有所提高,但速度较慢,并且尺寸较大时会变得更慢,因此建议不要创建太大的图像。 因此,您可能还需要指定延迟以使屏幕截图有机会渲染。
以下代码展示了如何通过将 HD 参数设置为 true 来制作每种语言的高清屏幕截图。 这通过将图像宽度和高度加倍来创建高分辨率图像,将标准屏幕截图的分辨率提高四倍。 但这会适得其反 将宽度和高度设置为除 -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 缩放浏览器以停止图像被拉伸。 然而,以这种方式创建高清屏幕截图时进行的测量 不准确,这就是为什么在此模式下全长屏幕截图的尺寸或比例并不总是完美的。
如果您在使用此方法创建正确缩放的高清图像时遇到问题,请尝试使用图像宽度和高度为原始浏览器尺寸的 x2、x3 或 x4。
当定位元素时,此模式也无法正常工作。 如果您想定位元素,建议您设置 HD 参数,如上所示。