Outils pour capturer et convertir le Web

Comment contrôler le recadrage du contenu PDF?

Lorsqu'un élément HTML est ciblé dans une conversion PDF, le résultat est rogné pour afficher uniquement l'élément HTML. Cependant, la question demeure de savoir quoi faire du reste de la page. La page entière doit-elle être affichée, avec l'élément HTML ciblé en haut ou uniquement l'élément HTML ?

Par défaut, la page entière est affichée avec l'élément HTML ciblé affiché en haut de la page. Comme le montre l'exemple de droite.

Cependant, il est parfois nécessaire de générer un PDF qui affichera uniquement l'élément HTML sélectionné sans le reste de la page. Un exemple de ce à quoi cela ressemblerait est présenté à gauche.

Pour ce faire, vous devez passer un -1 aux paramètres de largeur et de hauteur de la page. Malheureusement, cette approche est plus compliquée car avant que le PDF ne soit recadré, il doit être rendu.

Ainsi, si la taille de page par défaut n'est pas suffisamment grande pour restituer correctement l'élément HTML, vous devrez peut-être définir une taille et/ou une orientation de page plus grande pour garantir qu'elle est correctement rendue selon les besoins. Par exemple, essayez un format de page A3 ou B3, etc. et peut-être une orientation paysage.

Recadrer automatiquement la taille de la page selon la cible HTML

Notez que la fonction de dimensionnement automatique de la taille de la page fonctionnera uniquement lorsqu'un élément HTML est ciblé.

GrabzItClient grabzIt = new GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret");
PDFOptions options = new PDFOptions();
options.TargetElement = "#Article";
options.PageWidth = -1;
options.PageHeight = -1;
grabzIt.URLToPDF("http://www.spacex.com", options);
grabzIt.Save("http://www.mywebsite.com/Home/Handler");
GrabzItClient grabzIt = new GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret");
PDFOptions options = new PDFOptions();
options.setTargetElement("#Article");
options.setPageWidth(-1);
options.setPageHeight(-1);
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", 
{"format": "pdf", "download": 1, "target": "#Article", "height": -1, "width": -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 = {"targetElement":"#Article","pageWidth":-1,"pageHeight":-1};
client.url_to_pdf("http://www.spacex.com", options);
client.save("http://www.example.com/handler", 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 = GrabzItPDFOptions->new();
$options->targetElement("#Article");
$options->pageWidth(-1);
$options->pageHeight(-1);
$grabzIt->URLToPDF("http://www.spacex.com", $options);
$grabzIt->Save("http://www.mywebsite.com/handler.pl");
$grabzIt = new \GrabzIt\GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret");
$options = new \GrabzIt\GrabzItPDFOptions();
$options->setTargetElement("#Article");
$options->setPageWidth(-1);
$options->setPageHeight(-1);
$grabzIt->URLToPDF("http://www.spacex.com", $options);
$grabzIt->Save("http://www.mywebsite.com/handler.php");
grabzIt = GrabzItClient.GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret")
options = GrabzItPDFOptions.GrabzItPDFOptions()
options.targetElement = "#Article"
options.pageWidth = -1
options.pageHeight = -1
grabzIt.URLToPDF("http://www.spacex.com", options)
grabzIt.Save("http://www.mywebsite.com/handler.py")
https://api.grabz.it/services/convert?key=Sign in to view your Application Key&format=pdf&target=%23Article&height= -1&width=-1&url=https%3A%2F%2Fspacex.com%2F
grabzIt = GrabzIt::Client.new("Sign in to view your Application Key", "Sign in to view your Application Secret")
options = GrabzIt::PDFOptions.new()
options.targetElement = "#Article"
options.pageWidth = -1
options.pageHeigh = -1
grabzIt.url_to_pdf("http://www.spacex.com", options)
grabzIt.save("http://www.mywebsite.com/handler/index")