Técnicas para impressão | CSS
- Técnicas para impressão | CSS
🖨️ Preparando Páginas para Impressão com CSS, Paged.js e Outras Ferramentas
1. Introdução
Ao converter conteúdo web em PDFs ou documentos impressos, é essencial ajustar estilos e comportamentos que funcionam bem na tela, mas não em papel. O CSS moderno, junto de bibliotecas como Paged.js, permite criar layouts profissionais para impressão diretamente a partir de HTML.
2. Fundamentos do CSS para Impressão
2.1. Mídia de Impressão
Use a regra @media print para definir estilos aplicáveis apenas ao modo de impressão:
@media print {
body {
font-family: "Times New Roman", serif;
color: black;
background: none;
}
nav, footer, .no-print {
display: none;
}
}
💡 Dica: Sempre esconda menus, botões e elementos interativos que não fazem sentido em papel.
3. Configuração de Página com @page
A regra @page define margens, orientação e tamanho de página:
@page {
size: A4 portrait;
margin: 2cm;
}
Outras opções úteis:
size: letter;→ Formato americanosize: landscape;→ Orientação horizontalmargin: 1in;→ Margens em polegadas
Você também pode definir margens personalizadas por página com seletores:
@page:first {
margin-top: 5cm;
}
4. Cabeçalhos, Rodapés e Numeração de Páginas
Usando Paged.js ou PrinceXML, é possível criar cabeçalhos dinâmicos:
@page {
@top-center {
content: "Relatório de Vendas 2025";
}
@bottom-right {
content: "Página " counter(page) " de " counter(pages);
}
}
🔹 Paged.js interpreta esses comandos no navegador e gera PDFs navegáveis e paginados. 🔹 PrinceXML é uma alternativa comercial mais robusta (suporte avançado a PDF/A, links, sumários, etc).
5. Paged.js: Como Funciona
5.1. Instalação
Inclua o script na sua página:
<script src="https://unpkg.com/pagedjs/dist/paged.polyfill.js"></script>
5.2. Renderização
Paged.js lê o CSS e divide o conteúdo automaticamente em páginas virtuais. Ele respeita:
@pagee@media print- Contadores CSS (
counter(page)) - Regras de quebra de página (
break-before,break-after,break-inside)
Exemplo:
h1 {
break-before: page;
}
6. Outras Ferramentas Úteis
| Ferramenta | Tipo | Destaque |
|---|---|---|
| Paged.js | JS / Open Source | Simula impressão no navegador |
| PrinceXML | Software comercial | Suporte profissional a CSS3 Print |
| WeasyPrint | Python | Conversão HTML → PDF |
| Vivliostyle | JS / Open Source | Voltado para livros e revistas digitais |
7. Boas Práticas
✅ Defina margens e espaçamentos consistentes ✅ Use fontes seguras para impressão (serifadas geralmente funcionam melhor) ✅ Teste em diferentes tamanhos de papel ✅ Gere PDFs para revisão antes da impressão real ✅ Adicione metadados e sumário com ferramentas como Paged.js hooks
8. Conclusão
CSS para impressão evoluiu significativamente. Com Paged.js, PrinceXML e Vivliostyle, você pode criar PDFs e livros digitais diretamente a partir de código web, mantendo controle total sobre layout, tipografia e paginação.