Get a Free Trial

How do you improve the quality of web captures?

Before judging the quality of a capture it must be made clear that GrabzIt's capture software is based on Chromium, so if the URL or HTML doesn't render well in Chrome it won't be captured well.

Image Quality

Image captures by default use JPG, which uses a 90% compression by default to give reduced quality, but with a smaller image size. To improve the quality you need to either change the image format to something other than the default JPG such as PNG, which gives a good balance of compression and quality. Or keep the JPG format and set the quality parameter to 100, as shown below, although this will increase the file size.

ImageOptions options = new ImageOptions();
options.Quality = 100;

//The client should be stored somewhere and reused!
GrabzItClient grabzIt = new GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret", client);
grabzIt.URLToImage("http://www.spacex.com", options);
await grabzIt.SaveAsync("http://www.mywebsite.com/Home/Handler");
ImageOptions options = new ImageOptions();
options.setQuality(100);

GrabzItClient grabzIt = new GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret");
grabzIt.URLToImage("http://www.spacex.com", options);
grabzIt.Save("http://www.mywebsite.com/handler");
<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("http://www.spacex.com", 
{"quality":100}).Create();
</script>
var grabzit = require('grabzit');

var client = new grabzit("Sign in to view your Application Key", "Sign in to view your Application Secret");
client.url_to_image("http://www.spacex.com", {"quality":100});
client.save("http://www.example.com/handler", function (error, id){
    if (error != null){
        throw error;
    }
});
$options = GrabzItImageOptions->new();
$options->quality(100);

$grabzIt = GrabzItClient->new("Sign in to view your Application Key", "Sign in to view your Application Secret");
$grabzIt->URLToImage("http://www.spacex.com", $options);
$grabzIt->Save("http://www.mywebsite.com/handler.pl");
$options = new \GrabzIt\GrabzItImageOptions();
$options->setQuality(100);

$grabzIt = new \GrabzIt\GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret");
$grabzIt->URLToImage("http://www.spacex.com", $options);
$grabzIt->Save("http://www.mywebsite.com/handler.php");
options = GrabzItImageOptions.GrabzItImageOptions()
options.quality = 100

grabzIt = GrabzItClient.GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret")
grabzIt.URLToImage("http://www.spacex.com", options)
grabzIt.Save("http://www.mywebsite.com/handler.py")
https://api.grabz.it/convert?key=Sign in to view your Application Key&format=jpg&quality=100&url=https%3A%2F%2Fwww.bbc.com%2F
options = GrabzIt::ImageOptions.new()
options.quality = 100

grabzIt = GrabzIt::Client.new("Sign in to view your Application Key", "Sign in to view your Application Secret")
grabzIt.url_to_image("http://www.spacex.com", options)
grabzIt.save("http://www.mywebsite.com/handler/index")

Another potential quality issue can be caused by scaling the screenshot. This means increasing or decreasing the image size relative to the size of the browser. While we use the best scaling algorithms the quality can still be effected, this is often due to the developer choosing incorrect scaling ratios for the image.

Image Print Quality

If you want to print a image the the larger the image dimensions the higher quality image can be printed. To do this without stretching the image GrabzIt can create high definition images were images are zoomed to provide increased detail.

DOCX Quality

The quality of images stored in DOCX can be improved by setting the quality parameter for the type of document you are converting, the example below shows how to set the quality of a DOCX to 100.

DOCXOptions options = new DOCXOptions();
options.Quality = 100;

//The client should be stored somewhere and reused!
GrabzItClient grabzIt = new GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret", client);
grabzIt.URLToDOCX("http://www.spacex.com", options);
await grabzIt.SaveAsync("http://www.mywebsite.com/Home/Handler");
DOCXOptions options = new DOCXOptions();
options.setQuality(100);

GrabzItClient grabzIt = new GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret");
grabzIt.URLToPDF("http://www.spacex.com", options);
grabzIt.Save("http://www.mywebsite.com/handler");
<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("http://www.spacex.com", 
{"quality":100,"format":"docx"}).Create();
</script>
var grabzit = require('grabzit');

var client = new grabzit("Sign in to view your Application Key", "Sign in to view your Application Secret");
client.url_to_docx("http://www.spacex.com", {"quality":100});
client.save("http://www.example.com/handler", function (error, id){
    if (error != null){
        throw error;
    }
});
$options = GrabzItDOCXOptions->new();
$options->quality(100);

$grabzIt = GrabzItClient->new("Sign in to view your Application Key", "Sign in to view your Application Secret");
$grabzIt->URLToDOCX("http://www.spacex.com", $options);
$grabzIt->Save("http://www.mywebsite.com/handler.pl");
$options = new \GrabzIt\GrabzItDOCXOptions();
$options->setQuality(100);

$grabzIt = new \GrabzIt\GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret");
$grabzIt->URLToDOCX("http://www.spacex.com", $options);
$grabzIt->Save("http://www.mywebsite.com/handler.php");
options = GrabzItDOCXOptions.GrabzItDOCXOptions()
options.quality = 100

grabzIt = GrabzItClient.GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret")
grabzIt.URLToDOCX("http://www.spacex.com", options)
grabzIt.Save("http://www.mywebsite.com/handler.py")
https://api.grabz.it/convert?key=Sign in to view your Application Key&format=docx&quality=100&url=https%3A%2F%2Fwww.bbc.com%2F
options = GrabzIt::DOCXOptions.new()
options.quality = 100

grabzIt = GrabzIt::Client.new("Sign in to view your Application Key", "Sign in to view your Application Secret")
grabzIt.url_to_docx("http://www.spacex.com", options)
grabzIt.save("http://www.mywebsite.com/handler/index")

PDF Quality

PDF's generated by GrabzIt uses best compression by default, which ensures a PDF is compressed without losing quality. However a quality value of less than 50 will cause GrabzIt to fully compress the PDF.

Animated GIF Quality

You can also improve Animated GIF quality by setting the quality parameter to 100, additionally increasing the frame rate will also improve the quality of the GIF.

Note that to use most of these techniques will also require a premium package.