Extensão para Chrome que captura a página inteira — do topo ao rodapé, incluindo tudo que está fora da tela — e salva em PNG, JPG ou WebP.
Zero dependências, Manifest V3, sem host_permissions.
- Clique no ícone do OpenPrint e pressione Capturar página.
- A extensão rola a página em passos, capturando cada fatia visível com
chrome.tabs.captureVisibleTab. - Ao final da captura, uma nova aba é aberta com a imagem montada e os botões para salvar como PNG, JPG ou WebP.
Cabeçalhos fixos/sticky aparecem apenas na primeira fatia; rodapés fixos/sticky apenas na última — assim eles não se repetem no meio da imagem final.
O protocolo DevTools do Chrome (Page.captureScreenshot com captureBeyondViewport) captura a página inteira em uma única chamada, mas exige a permissão debugger, que mostra ao usuário o banner persistente "esta extensão está depurando o navegador" e complica a revisão na Web Store. Rolar + captureVisibleTab precisa apenas de activeTab, então a extensão nunca solicita acesso amplo a hosts.
| Permissão | Motivo |
|---|---|
activeTab |
Acesso temporário apenas à aba onde a extensão foi acionada — sem <all_urls>, sem acesso a outras abas em segundo plano. |
scripting |
Injeta a lógica de rolagem/medição na aba, sob demanda. |
downloads |
Salva a imagem final na pasta de Downloads. |
Sem host_permissions, sem código remoto, sem analytics.
- Baixe ou clone este repositório.
- Acesse
chrome://extensions. - Ative o Modo do desenvolvedor (canto superior direito).
- Clique em Carregar sem compactação e selecione a pasta
OpenPrint(a raiz do repositório).
- Apenas rolagem vertical é tratada (overflow horizontal está fora do escopo).
- Páginas que rolam dentro de um contêiner interno personalizado (em vez do próprio
document) não são detectadas. - Elementos com
position: stickysão classificados pela posição no início da captura; elementos sticky que só se ativam após ultrapassar um limiar de rolagem podem não ser tratados corretamente. - Páginas muito altas produzem um canvas final muito grande; casos extremos podem atingir limites de memória do navegador ou de tamanho de mensagem.
MIT — veja LICENSE.