Calculadora para pixelar imagens
Uma imagem de 1920 × 1080 dividida em blocos de 16 pixels precisa de 120 colunas por 68 linhas, 8160 blocos no total, e a última linha tem só 8 pixels de altura. Planeje a grade da pixelização antes de mexer em qualquer cor. Grátis no seu navegador.
- Grátis
- Funciona no seu navegador
- Sem cadastro
- Seus dados não saem do seu aparelho
Executar grátis
Exemplo resolvido
- Largura
- 1.920
- Altura
- 1.080
- Tamanho do bloco
- 16
- Colunas
- 120
- Linhas
- 68
- Total de blocos
- 8.160
- Largura da borda direita
- 16
A calculadora para pixelar imagens converte a largura e a altura de uma imagem, junto com o tamanho do bloco quadrado, na grade exata necessária para um efeito de pixelização. Ela informa o número de colunas e linhas, o total de blocos e as dimensões dos blocos parciais nas bordas direita e inferior. É útil para planejar filtros, criar mosaicos, estimar trabalho ou alinhar uma prévia de design à implementação. O cálculo é determinístico e funciona sem enviar nem decodificar a imagem.
Converta dimensões em pixels em uma grade de blocos
Um efeito de pixelização substitui grupos de pixels de origem próximos por uma única cor representativa. Antes de processar as cores, uma implementação precisa saber quantos grupos cabem na largura e na altura da imagem. Informe a largura e a altura em pixels e escolha o comprimento do lado de cada bloco quadrado.
A calculadora divide cada dimensão pelo tamanho do bloco e arredonda para cima. Esse arredondamento é importante porque a dimensão nem sempre é um múltiplo exato do tamanho escolhido. Mesmo uma pequena sobra à direita precisa de sua própria coluna; descartá-la deixaria uma faixa sem processamento.
A ferramenta calcula somente a geometria. Ela não lê pixels, coleta cores, redimensiona arquivos nem cria uma imagem transformada, portanto entradas iguais sempre geram o mesmo resultado, independentemente do formato da imagem.
Entenda os blocos parciais nas bordas
Quando as duas dimensões são divisíveis pelo tamanho do bloco, todas as células têm medidas idênticas. Porém, imagens reais frequentemente deixam uma sobra. A última coluna pode ser mais estreita e a última linha, mais baixa.
Quando não há sobra, o valor da borda corresponde ao tamanho completo do bloco, e não a zero, pois o último bloco é normal. Quando há sobra, o valor indica exatamente quantos pixels de origem restam. A grade ainda aplica divisão com arredondamento para cima, garantindo que cada pixel pertença a uma única célula.
Isso ajuda especialmente em implementações que recortam retângulos de amostragem, reservam buffers de mosaico ou verificam se as regiões calculadas permanecem dentro dos limites da imagem original.
Escolha um tamanho de bloco válido e adequado
Largura, altura e tamanho do bloco devem ser números inteiros positivos, pois a calculadora representa pixels discretos. O bloco também precisa caber nas duas dimensões da imagem. Dentro do intervalo válido, blocos menores preservam mais detalhes reconhecíveis e criam mais células, enquanto blocos maiores produzem uma abstração mais grosseira com menos células.
Você pode comparar vários tamanhos para equilibrar aparência e processamento antes de executar um filtro real. Em prévias responsivas, refaça o cálculo sempre que as dimensões ou o bloco mudarem, em vez de escalar uma contagem antiga, pois o arredondamento nas bordas pode alterar linhas ou colunas. Nenhuma opção envia pixels, já que apenas dimensões numéricas são necessárias.
Casos de uso
Planeje um loop de pixelização em canvas
Obtenha limites exatos de linhas e colunas antes de amostrar e pintar regiões quadradas de cor em um canvas.
Estime o trabalho de um mosaico
Use o total de blocos para comparar o esforço de processamento gerado por diferentes tamanhos.
Trate bordas irregulares
Use as medidas das bordas direita e inferior para não cortar pixels nem ler além dos limites da imagem.
Perguntas frequentes
Por que um bloco maior que a imagem é rejeitado?
O bloco quadrado precisa caber nas duas dimensões.
Quantos blocos uma imagem de 1920 × 1080 gera com blocos de 16 pixels?
Gera 120 colunas por 68 linhas, ou seja, 8160 blocos. A largura divide certinho, mas 1080 não é múltiplo de 16, então a linha de baixo tem só 8 pixels de altura.
Por que a calculadora arredonda para cima e não para baixo?
Porque a faixa estreita que sobra à direita ou embaixo também precisa de blocos próprios. Arredondar para baixo deixaria essa faixa sem processar; para cima, cada pixel fica em um único bloco.
Qual tamanho de bloco devo escolher?
Blocos pequenos preservam mais detalhes reconhecíveis e geram mais blocos; blocos grandes dão um visual mais grosseiro e abstrato, com menos blocos. Teste vários tamanhos e compare os números antes de aplicar o filtro de verdade.
A ferramenta pixeliza a minha foto?
Não. Ela só calcula a geometria da grade a partir da largura, da altura e do tamanho do bloco. Nunca abre a imagem, não lê cores nem cria um arquivo novo, então os mesmos números sempre dão a mesma grade.
Ferramentas relacionadas
Para desenvolvedores — acesso via API
Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.
Endpoint
Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.
Chame do seu código
curl -X POST https://api.kit.forhosting.com/image/pixelate \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"width":1920,"height":1080,"block_size":16}'const res = await fetch("https://api.kit.forhosting.com/image/pixelate", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"width": 1920,
"height": 1080,
"block_size": 16
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/image/pixelate",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"width": 1920,
"height": 1080,
"block_size": 16
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/image/pixelate", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"width":1920,"height":1080,"block_size":16}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"width":1920,"height":1080,"block_size":16}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/image/pixelate", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemplo de requisição
{
"width": 1920,
"height": 1080,
"block_size": 16
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "image.pixelate",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.
Preço
Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.
Limites
max_mb | 15 |
max_megapixels | 12 |
Erros
| HTTP | Código | O que significa |
|---|---|---|
401 | unauthorized | Token ausente ou inválido. Confira o header Authorization. |
402 | insufficient_balance | Saldo insuficiente para esta tarefa. Faça uma recarga e tente de novo. |
404 | unknown_type | Esse tipo de tarefa não existe. Confira o campo type no catálogo. |
429 | rate_limited | Muitas requisições em pouco tempo. Espere um instante e tente de novo. |
Notas técnicas
Converta dimensões em pixels em uma grade de blocos
Os valores de colunas e linhas descrevem a grade completa, enquanto total_blocks é o produto entre eles. Esses resultados servem como limites de loops, planejamento de canvas, estimativas de carga, dados de teste e prévias de interface.
Entenda os blocos parciais nas bordas
Os resultados right_edge_width e bottom_edge_height tornam essas condições explícitas. Essa convenção simplifica o código de renderização: células comuns usam block_size, enquanto a coluna e a linha finais usam as medidas apresentadas.
Escolha um tamanho de bloco válido e adequado
Um quadrado maior do que qualquer um dos lados não forma a grade solicitada; por isso, essa entrada retorna invalid_input em vez de um resultado ambíguo. A versão do navegador executa localmente; solicitações automatizadas pela API custam US$ 0,002 cada.
Perguntas técnicas
Como as colunas e as linhas são calculadas?
Cada dimensão é dividida por block_size e arredondada para cima, incluindo os blocos parciais das bordas direita e inferior.
O que acontece quando a divisão é exata?
As medidas das bordas correspondem a block_size porque a última coluna e a última linha contêm blocos completos.
A ferramenta modifica ou envia minha imagem?
Não. Ela recebe somente width, height e block_size e calcula a geometria sem ler um arquivo de imagem.
Quanto custa uma solicitação pela API?
Cada solicitação pela API custa US$ 0,002. O mesmo cálculo determinístico está disponível gratuitamente no navegador.