Para adicionar cabeçalhos e/ou rodapés a documentos DOCX ou PDF, primeiro você precisa criar um modelo, com um identificador especificado. Nesse caso report
. O modelo pode incluir todo o texto, imagens e tabelas que você deseja exibir, juntamente com regras sobre quando mostrar cabeçalhos e rodapés.
Além disso, os modelos podem incluir variáveis incorporadas, como números de página. Ou variáveis de modelo personalizadas que podem conter qualquer texto simples. Não é possível passar HTML usando variáveis de modelo personalizadas; no entanto, quaisquer caracteres /n ou /r serão convertidos em quebras de linha.
No exemplo abaixo, uma variável personalizada está sendo usada no texto do cabeçalho, onde {number}
é uma variável personalizada.
Report number: {number}
Você pode então passar esse identificador de modelo para GrabzIt para adicionar o cabeçalho especificado a qualquer documento DOCX ou PDF. Nos exemplos mostrados abaixo, o cabeçalho acima é exibido em cada documento PDF gerado, para cada linguagem de programação que suportamos. No entanto, esse código pode ser facilmente adaptado para adicionar cabeçalhos e rodapés também 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últiplas variáveis de modelo, basta separar cada par de valores-chave com um &
.
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")
Lembre-se de que ao fazer solicitações, certifique-se todos os os valores dos parâmetros são codificados em URL. Observe que cada nome e valor POST também deverá ser codificado em URL primeiro. Para especificar múltiplas variáveis de modelo, basta separar cada par de valores-chave com um &
, então o URL codifica o 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")
Ao gerar documentos PDF você deve garantir que haja espaço suficiente para que seu cabeçalho ou rodapé apareça. Para fazer isso, especifique uma margem superior grande o suficiente para que o cabeçalho apareça e uma margem inferior grande o suficiente para que o rodapé apareça. Obter o tamanho da margem correto pode exigir algumas tentativas e erros.