Esta página foi traduzida automaticamente. Encontrou um erro?Ajude a melhorá-la.
Skip to content

HTML para Imagem ​

Capture uma URL de página web ou conteúdo HTML bruto como uma imagem de captura de tela. Suporta emulação de dispositivo (desktop, tablet, mobile), captura de página inteira e vários formatos de saída.

Endpoint da API ​

POST /api/v1/tools/image/html-to-image

Aceita um corpo JSON (não multipart). Não é necessário envio de arquivo.

Parâmetros ​

ParâmetroTipoObrigatórioPadrãoDescrição
urlstringCondicional-URL a capturar (deve ser uma URL válida)
htmlstringCondicional-Conteúdo HTML bruto a renderizar (1 a 5.000.000 caracteres)
formatstringNão"png"Formato de saída: jpg, png, webp
qualitynumberNão90Qualidade de saída para formatos com perdas (1 a 100)
fullPagebooleanNãofalseCaptura a página inteira rolável, não apenas a viewport
devicePresetstringNão"desktop"Emulação de dispositivo: desktop, tablet, mobile, custom
viewportWidthnumberNão1280Largura personalizada da viewport em pixels (320 a 3840, usada quando devicePreset é custom)
viewportHeightnumberNão720Altura personalizada da viewport em pixels (320 a 2160, usada quando devicePreset é custom)

É preciso fornecer url ou html, mas não ambos.

Predefinições de Dispositivo ​

PredefiniçãoLarguraAlturaUA Mobile
desktop1280720Não
tablet7681024Não
mobile375812Sim
custom(especificado pelo usuário)(especificado pelo usuário)Não

Exemplo de Requisição ​

Capturar uma página web:

bash
curl -X POST http://localhost:1349/api/v1/tools/image/html-to-image \
  -H "Authorization: Bearer si_your-api-key" \
  -H "Content-Type: application/json" \
  -d '{"url": "https://example.com", "format": "png", "fullPage": true, "devicePreset": "desktop"}'

Renderizar conteúdo HTML:

bash
curl -X POST http://localhost:1349/api/v1/tools/image/html-to-image \
  -H "Authorization: Bearer si_your-api-key" \
  -H "Content-Type: application/json" \
  -d '{"html": "<div style=\"padding: 20px; background: #f0f0f0;\"><h1>Hello</h1></div>", "format": "png"}'

Exemplo de Resposta ​

json
{
  "jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/screenshot.png",
  "originalSize": 0,
  "processedSize": 145000
}

Observações ​

  • Requer que o Chromium esteja instalado no servidor. Retorna HTTP 503 se o serviço de navegador não estiver disponível.
  • As URLs são validadas contra ataques SSRF (endereços de rede privados/internos são bloqueados).
  • Este endpoint tem limite de taxa de 120 requisições por hora.
  • originalSize é sempre 0, pois esta ferramenta gera imagens a partir de URLs/HTML.
  • O nome do arquivo de saída é screenshot.<format>.
  • Se a página demorar demais para carregar, a requisição retorna HTTP 504 (tempo limite de gateway).
  • Se o serviço de navegador travar repetidamente, ele é desativado temporariamente e retorna HTTP 503 com o código BROWSER_CRASHED.