ForHosting KIT · Imagens

Crie um layout de marca d'água repetida em mosaico

Uma imagem de 300×200 com peças de 100×50, espaços de 20 e 10 e inclinação de 30° precisa de 15 posições, incluindo as peças parciais da borda. Informe tela, peça, espaçamento e ângulo para receber o centro de cada cópia. Grátis no seu navegador.

  • Grátis
  • Funciona no seu navegador
  • Sem cadastro
  • Seus dados não saem do seu aparelho
Use pelo WebAPIE-mailTelegramApp em breve
Se você digitar
Largura da tela
300
Altura da tela
200
Largura do azulejo
100
Altura do ladrilho
50
Espaçamento X
20
Espaçamento Y
10
Você obtém
Quantidade
15

Crie uma grade completa de marcas d'água repetidas sem estimar quantas cópias são necessárias além das bordas visíveis. Informe as dimensões da tela e do bloco, os espaçamentos horizontal e vertical e o ângulo de rotação. A calculadora retorna coordenadas centrais estáveis para cada bloco girado que toca a tela, inclusive blocos parciais nas bordas. O layout fica centralizado, usa identificadores consistentes de linha e coluna e pode ser enviado diretamente a um fluxo de renderização de imagem, SVG, PDF ou Canvas.

Defina a tela e o bloco da marca d'água

Comece com a largura e a altura da tela de destino e, em seguida, informe a largura e a altura sem rotação de um bloco de marca d'água. Todas as dimensões usam a mesma unidade, geralmente pixels, mas também podem usar pontos ou outra unidade de coordenadas quando o renderizador adota um sistema diferente. O bloco precisa caber na tela nas duas dimensões.

Essa validação detecta trocas acidentais, conversões incorretas de unidade e solicitações que produziriam um único carimbo grande demais em vez de um padrão repetido. Depois, defina os espaçamentos horizontal e vertical. Esses valores são lacunas entre as bordas dos blocos ao longo dos próprios eixos da grade, não distâncias absolutas na tela após a rotação.

Zero posiciona os blocos lado a lado; valores maiores deixam o padrão mais leve e com mais espaço vazio. A origem retornada é o centro da tela. A linha zero e a coluna zero identificam o bloco centralizado nessa origem, fornecendo ao seu código uma âncora estável mesmo quando dimensões, espaçamento ou ângulo mudarem.

Entenda a rotação e a cobertura das bordas

O ângulo gira toda a malha no sentido horário em torno do centro da tela. Qualquer valor finito em graus é aceito e normalizado para uma volta, portanto menos trinta graus e trezentos e trinta graus geram o mesmo layout. A rotação amplia a região que a grade precisa cobrir: um bloco cujo centro está fora da imagem ainda pode ter um canto visível dentro dela.

Por isso, a calculadora projeta a tela nos eixos girados da grade, cria um conjunto limitado de linhas e colunas candidatas e testa cada retângulo girado contra o retângulo da tela. Uma posição é retornada quando esses retângulos se tocam ou se sobrepõem. Essa regra exata de interseção evita lacunas nos cantos e não emite blocos distantes que uma caixa delimitadora superdimensionada incluiria.

As coordenadas representam centros porque bibliotecas raster, transformações SVG e CSS e APIs Canvas aceitam de forma consistente a rotação central. Blocos parciais nas bordas são intencionais; deixe o renderizador de destino recortá-los na tela.

Renderize e reproduza o layout

Processe as posições na ordem retornada, dos identificadores de linha menores para os maiores e, em seguida, das colunas menores para as maiores. Os identificadores de linha e coluna ajudam na depuração, na alternância de opacidade ou na seleção de blocos intercalados, mas não substituem as coordenadas. As coordenadas numéricas são arredondadas para seis casas decimais, mantendo o resultado serializado estável e preservando a precisão subpixel em saídas de alta resolução.

Se você precisar de padrão escalonado, variação aleatória, marcas com rotações individuais ou medição de texto, aplique essas transformações depois de receber a grade regular ou utilize um compositor especializado.

Proteja imagens de prévia

Repita um logotipo sobre prévias de produtos, provas ou portfólios para que um único corte não remova todas as marcas.

Gere instruções de renderização

Crie centros estáveis para Canvas, SVG, PDF ou pipelines de imagem no servidor sem repetir a matemática do layout.

Mantenha exportações consistentes

Reutilize as mesmas regras de ângulo e espaçamento em vários tamanhos de tela, preservando um padrão centralizado e determinístico.

As coordenadas x e y indicam cantos ou centros?

Elas indicam os centros dos blocos. Gire e desenhe cada marca d'água ao redor desse ponto usando o ângulo retornado.

Por que alguns centros ficam fora da tela?

Um bloco girado pode cruzar a tela mesmo com o centro fora dela. Essas posições cobrem bordas e cantos e devem ser recortadas na renderização.

Em qual direção o ângulo é aplicado?

Ângulos positivos giram no sentido horário no sistema comum de imagens, em que x cresce para a direita e y cresce para baixo.

O espaçamento pode ser zero?

Sim. Zero faz as bordas vizinhas se encontrarem nesse eixo da grade. O espaçamento não pode ser negativo.

A peça da marca d'água pode ser maior que a imagem?

Não. A peça precisa caber na tela nas duas direções. Essa regra pega largura e altura trocadas, uma conversão de unidade errada ou um pedido que geraria um único carimbo enorme em vez de um padrão repetido.

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.

POSThttps://api.kit.forhosting.com/image/watermark-tile-repeat-layout

Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.

curl -X POST https://api.kit.forhosting.com/image/watermark-tile-repeat-layout \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"canvas_width":800,"canvas_height":600,"tile_width":160,"tile_height":80,"spacing_x":40,"spacing_y":30,"angle_deg":-30}'
{
  "canvas_width": 800,
  "canvas_height": 600,
  "tile_width": 160,
  "tile_height": 80,
  "spacing_x": 40,
  "spacing_y": 30,
  "angle_deg": -30
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "image.watermark_tile_repeat_layout",
  "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.

por chamadaUS$ 0,002

Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.

max_mb15
max_megapixels12
HTTPCódigoO que significa
401unauthorizedToken ausente ou inválido. Confira o header Authorization.
402insufficient_balanceSaldo insuficiente para esta tarefa. Faça uma recarga e tente de novo.
404unknown_typeEsse tipo de tarefa não existe. Confira o campo type no catálogo.
429rate_limitedMuitas requisições em pouco tempo. Espere um instante e tente de novo.

Renderize e reproduza o layout

Para cada registro, coloque o centro da marca d'água em center_x e center_y, gire-a por angle_deg ao redor desse centro e desenhe-a com a largura e a altura fornecidas. O algoritmo não usa deslocamento aleatório, relógio, estado armazenado nem recurso de rede; entradas iguais sempre retornam o mesmo JSON. O preço da API é US$ 0,002 por cálculo, independentemente da quantidade de posições dentro do limite de segurança.

Quanto custa a chamada de API?

Cada cálculo custa US$ 0,002. O resultado contém a lista completa de posições dentro do limite de segurança documentado.

O que acontece se o bloco superar a tela?

A solicitação retorna um erro invalid_input porque um bloco repetido não pode superar a largura nem a altura da tela.

Ver a documentação completa do KIT →