Ferramentas para capturar e converter a Web

Como criar capturas de tela de alta definição?

Ocasionalmente, convém criar capturas de tela de alta definição (HD) ou retina. Essas capturas de tela de alta definição aumentaram a resolução, mas são mais lentas e se tornam ainda mais lentas com dimensões maiores. Por esse motivo, é recomendável não criar uma imagem muito grande. Como tal, você provavelmente também precisará especificar um atraso para fornecer a captura de tela.

O código a seguir mostra como fazer uma captura de tela de alta definição em cada idioma, definindo o parâmetro HD como true. Isso cria uma imagem de alta resolução, duplicando a largura e a altura da imagem, aumentando a resolução de uma captura de tela padrão em quatro vezes. No entanto, seria contraproducente defina uma largura e altura para qualquer coisa, exceto -1 pois isso faria com que a imagem fosse redimensionada novamente!

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.4.8/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.ashx?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")

À esquerda é um exemplo de captura de tela padrão e à direita é uma captura de tela de alta definição produzida pelo código acima, ambas as capturas de tela têm a mesma altura.


Definir a resolução da imagem com precisão

Capturas de tela de alta definição de tamanhos diferentes também podem ser criadas especificando uma largura maior que a largura do navegador. GrabzIt escala o navegador para impedir que a imagem seja esticada. No entanto, as medidas tomadas ao criar capturas de tela de alta definição dessa maneira são imprecisos, é por isso que as capturas de tela completas nem sempre são perfeitamente dimensionadas ou dimensionadas nesse modo.

Se estiver com problemas para criar imagens de alta definição corretamente dimensionadas usando esse método, tente usar a largura e a altura da imagem como x2, x3 ou x4 das dimensões originais do navegador.

Esse modo também não funcionará corretamente ao direcionar elementos. Se você deseja segmentar elementos, é recomendável definir o parâmetro HD como mostrado acima.