HTML to PDF

Descubra mais sobre o componente HTML to PDF e como usá-lo na Digibee Integration Platform.

O componente HTML to PDF permite a criação de arquivos no formato PDF a partir de um HTML. O componente utiliza templates Apache FreeMaker para gerar o HTML através da mensagem JSON do pipeline.

Parâmetros

Dê uma olhada nas opções de configuração do componente. Parâmetros suportados por expressões Double Braces estão marcados com (DB).

Parâmetro
Descrição
Valor padrão
Tipo de dado

File Name (DB)

Nome do arquivo PDF que será gerado na saída da execução do componente.

file.pdf

String

Template (HTML) (DB)

Template em HTML a ser interpretado para gerar o arquivo PDF. Este campo suporta o template FreeMarker.

N/A

String

Fail On Error

Se a opção estiver ativada, a execução do pipeline com erro será interrompida; do contrário, a execução do pipeline continua, mas o resultado vai mostrar um valor falso para a propriedade "success".

False

Booleano

Secured PDF

Se a opção estiver ativada, é permitida a inclusão de senha no arquivo PDF para gerar um documento protegido.

False

Booleano

Password (DB)

Senha para proteger o arquivo PDF.

N/A

String

Custom permissions

Se a opção estiver ativada, opções de permissão customizadas para o arquivo PDF ficam disponíveis; do contrário, nenhum dos parâmetros a seguir ficam disponíveis, e o arquivo PDF será gerado com todas as permissões.

False

Booleano

Read only

Permissão de acesso que define o arquivo PDF como "somente leitura". Se a opção estiver ativada, todas as outras permissões de acesso serão desativadas.

False

Booleano

Assemble document

Permite que páginas sejam adicionadas, rotacionadas ou removidas do arquivo.

False

Booleano

Modify

Permite modificar o arquivo.

False

Booleano

Modify annotations

Permite adicionar ou modificar anotações de texto no arquivo.

False

Booleano

Extract content

Permite extrair textos e imagens do arquivo.

False

Booleano

Extract for accessibility

Permite extrair textos e imagens do arquivo para fins de acessibilidade.

False

Booleano

Print

Permite a impressão do arquivo.

False

Booleano

Print degraded

Permite a impressão degraded do arquivo.

False

Booleano

Fill in Form

Permite o preenchimento de formulários com campos interativos.

False

Booleano

Fluxo de Mensagens

Entrada

O componente aceita qualquer mensagem de entrada, podendo utilizá-la por meio de Double Braces.

Saída

  • Com sucesso

{  
    "success": true,  
    "fileName": "pdf_gerado.pdf",  
}
  • Sem sucesso

{  
    "success": false,  
    "message": "Could not generate the pdf file",  
    "error": "java.net.IOException"
}

Exemplo de resposta de requisição contendo erro

{  
    "success": false,  
    "message": "Could not generate the pdf file",  
    "error": "java.net.IOException:"
}
  • success: “false” quando a operação falha.

  • message: mensagem sobre o erro.

  • exception: informação sobre o tipo de erro ocorrido.

Exemplo:

  • Body

<p>We have these animals:
<table border=1>
  <#list animals as animal>
    <tr><td>${animal.name}<td>${animal.price} Euros
  </#list>
</table>

Portanto, na mensagem de entrada é recebido um array de objetos que contêm as propriedades “name” e “price”:

[
    { "name": "Dog", "price": 100},
    { "name": "Cat", "price": 100},
    { "name": "Bird", "price": 30},
]

O template fará a iteração nesse array recebido e preencherá o HTML:

<p>We have these animals:
<table border=1>
      <tr><td>Dog<td>$100 Euros
<tr><td>Cat<td>$100 Euros
<tr><td>Bird<td>$30 Euros
  </table>

Outras aplicações

SVG

Para utilizar o SVG como tag HTML, aplique a seguinte propriedade dentro da tag SVG xmlns="http://www.w3.org/2000/svg":

<svg xmlns="http://www.w3.org/2000/svg" width="400" height="180">
  <rect x="50" y="20" rx="20" ry="20" width="150" height="150" style="fill:red;stroke:black;stroke-width:5;opacity:0.5" />
  Sorry, your browser does not support inline SVG.
</svg>

CSS

Não há suporte para versões acima de 2.1.

Imagens

A utilização de imagens em formato base64 dentro de tags HTML não é suportada.

Exemplo:

<img src="data:image/png;base64, iVBORw0KGgoAAAANSUhEUgAA…>

Você pode utilizar imagens com referência local e remota:

Imagem Local

<img src="image.jpg" alt="IMAGE2" >

No exemplo acima, deve existir um arquivo de imagem exatamente com o nome especificado dentro da tag src (image.jpg)

Imagem Remota

<img src="https://www.google.com/images/branding/googlelogo/2x/googlelogo_color_92x30dp.png" alt="IMAGE2" >

Atualizado