Herramientas para capturar y convertir la web

¿Cómo controlar el recorte de contenido PDF?

Cuando un elemento HTML está dirigido a una conversión de PDF, el resultado se recorta para mostrar solo el elemento HTML. Sin embargo, la pregunta sigue siendo qué hacer con el resto de la página. ¿Debería mostrarse la página completa, con el elemento HTML objetivo en la parte superior o solo el elemento HTML?

De manera predeterminada, la página completa se muestra con el elemento HTML objetivo que se muestra en la parte superior de la página. Como se muestra en el ejemplo a la derecha.

Sin embargo, a veces se requiere generar un PDF que solo muestre el elemento HTML seleccionado sin el resto de la página. Un ejemplo de cómo se vería esto se muestra a la izquierda.

Para hacer esto, debe pasar un -1 a los parámetros de ancho y alto de la página. Sin embargo, desafortunadamente este enfoque es más complicado porque antes de que se recorte el PDF debe ser renderizado.

Por lo tanto, si el tamaño de página predeterminado no es lo suficientemente grande como para representar correctamente el elemento HTML, es posible que deba establecer un tamaño y / u orientación de página más grande para garantizar que se represente correctamente según sea necesario.

Recortar automáticamente el tamaño de página al destino HTML

Tenga en cuenta que la función de tamaño de página de tamaño automático funcionará -sólo- cuando un elemento HTML está dirigido.

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.4.7/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")
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")