Herramientas para capturar y convertir la web

¿Cómo agregar encabezados y pies de página a documentos DOCX y PDF?

Encabezamiento

Para agregar encabezados y/o pies de página a documentos DOCX o PDF, primero debe crear una plantilla, con un identificador especificado. En este caso report. La plantilla puede incluir todo el texto, imágenes y tablas que desee mostrar, junto con reglas sobre cuándo mostrar los encabezados y pies de página.

Además, las plantillas pueden incluir variables integradas, como números de página. O variables de plantilla personalizadas que pueden contener cualquier texto sin formato. No es posible pasar HTML utilizando variables de plantilla personalizadas; sin embargo, cualquier carácter /n o /r se convertirá en saltos de línea.

En el siguiente ejemplo, se utiliza una variable personalizada en el texto del encabezado, donde {number} es una variable personalizada.

Report number: {number}

Luego puede pasar este identificador de plantilla a GrabzIt para agregar el encabezado especificado a cualquier documento DOCX o PDF. En los ejemplos que se muestran a continuación, el encabezado anterior se muestra en cada documento PDF generado, para cada lenguaje de programación que admitimos. Sin embargo, este código también se puede adaptar fácilmente para agregar encabezados y pies de página a documentos DOCX.

GrabzItClient grabzIt = new GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret");
PDFOptions options = new PDFOptions();
options.TemplateId = "report";
options.MarginTop = 50;
options.MarginBottom = 50;
options.AddTemplateParameter("number", "12345");

grabzIt.URLToPDF("http://www.spacex.com", options);
grabzIt.Save("http://www.example.com/Home/Index");
GrabzItClient grabzIt = new GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret");
PDFOptions options = new PDFOptions();
options.setTemplateId("report");
options.setMarginTop(50);
options.setMarginBottom(50);
options.AddTemplateParameter("number", "12345");

grabzIt.URLToPDF("http://www.spacex.com", options);
grabzIt.Save("http://www.example.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").AddTemplateVariable("number", "12345").ConvertURL("http://www.spacex.com", 
{"format": "pdf", 
"mtop":50, 
"mbottom":50, 
"templateid":"report"}).Create();
</script>

Para especificar múltiples variables de plantilla simplemente separe cada par clave-valor con un &.

var grabzit = require('grabzit');

var client = new grabzit("Sign in to view your Application Key", "Sign in to view your Application Secret");
var options = {"marginTop":50,"marginBottom":50,"templateId":"report",
"templateVariables":"number=12345"};

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->marginTop(50);
$options->marginBottom(50);
$options->templateId("report");
$options->AddTemplateParameter("number","12345");

$grabzIt->URLToPDF("http://www.spacex.com", $options);
$grabzIt->Save("http://www.example.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->setMarginTop(50);
$options->setMarginBottom(50);
$options->setTemplateId("report");
$options->AddTemplateParameter("number","12345");

$grabzIt->URLToPDF("http://www.spacex.com", $options);
$grabzIt->Save("http://www.example.com/handler.php");
grabzIt = GrabzItClient.GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret")
options = GrabzItPDFOptions.GrabzItPDFOptions()
options.marginTop = 50
options.marginBottom = 50
options.templateId = "report"
options.AddTemplateParameter("number","12345")

grabzIt.URLToPDF("http://www.spacex.com", options)
grabzIt.Save("http://www.example.com/handler.py")

Recuerde al realizar solicitudes, asegúrese de todos Los valores de los parámetros están codificados en URL. Tenga en cuenta que cada nombre y valor de POST también deberá codificarse en URL primero. Para especificar múltiples variables de plantilla simplemente separe cada par clave-valor con un &, luego la URL codifica el tvars parámetro.

https://api.grabz.it/services/convert?key=Sign in to view your Application Key&format=pdf&tvars=number%3D12345&mtop=50&mbottom=50&templateid=report&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.marginTop = 50
options.marginBottom = 50
options.templateId = "report"
options.add_template_parameter("number","12345")

grabzIt.url_to_pdf("http://www.spacex.com", options)
grabzItClient.save("http://www.example.com/handler/index")

El encabezado o pie de página no aparece en PDF

Al generar documentos PDF, debe asegurarse de que haya suficiente espacio para que aparezca el encabezado o pie de página. Para hacer esto, especifique un margen superior lo suficientemente grande para que aparezca el encabezado y un margen inferior lo suficientemente grande para que aparezca un pie de página. Para obtener el tamaño correcto del margen puede ser necesario realizar algunas pruebas y errores.