Seamless Pattern Maker: Tiles e Repetições
Envie um tile e pré-visualize padrões com escala, rotação, espaçamento e 4 modos. Exporte como PNG. Processamento 100% local.
O que é o Seamless Pattern Maker?
O Seamless Pattern Maker pega uma única imagem tile e a renderiza em um canvas configurável para pré-visualizar e exportar um padrão de tiling sem costura. Você controla escala, rotação, espaçamento de gap e escolhe entre quatro modos de tiling — grade normal, offset meio tijolo, diagonal e espelhado — para ver exatamente como o tile ficará quando repetido. Depois de satisfeito, exporte o resultado como uma grande imagem PNG ou copie um snippet CSS background-image pronto para colar. Todo o processamento ocorre localmente no seu navegador sem uploads de arquivo para qualquer servidor.
Funcionalidades principais
- Upload de tile por arrastar e soltar ou clique: A área de upload aceita arrastar e soltar e clique para navegar. Arquivos maiores que 10 MB são rejeitados com mensagem de erro. As dimensões do tile carregado são exibidas abaixo do thumbnail de pré-visualização.
- Pré-visualização de tiling em tempo real: Sempre que você ajusta uma configuração, o canvas é redesenhado imediatamente. O canvas renderiza tiles suficientes para preencher toda a área de pré-visualização, incluindo tiles extras nas margens para compensar o estouro de rotação.
- Escala ajustável do tile (5% a 400%): Um controle deslizante em incrementos de 5% redimensiona o tile para cima ou para baixo em relação às suas dimensões originais em pixels. A 100%, o tile é renderizado em seu tamanho nativo.
- Controle de rotação (0 a 360 graus): Rotaciona cada tile em torno de seu ponto central antes de desenhá-lo. Funciona com qualquer modo de tiling.
- Espaçamento de gap entre tiles: Um controle deslizante de -50 a 50px controla o espaçamento. Valores positivos adicionam espaço entre tiles preenchido com a cor de fundo; valores negativos sobrepõem tiles para efeitos em camadas.
- Quatro modos de tiling: Normal — grade padrão sem offset. Meio tijolo — linhas alternadas são deslocadas pela metade da largura de um tile, como alvenaria. Meio queda — colunas alternadas são deslocadas pela metade da altura de um tile, produzindo um padrão de escalonamento vertical. Espelhado — colunas alternadas são viradas horizontalmente e linhas alternadas são viradas verticalmente, criando simetria tipo caleidoscópio.
- Tamanho de canvas configurável: Os campos de largura e altura aceitam 100–4096 pixels. O canvas de pré-visualização e o PNG exportado usam exatamente essas dimensões.
- Exportar como PNG: Baixa o canvas renderizado como
pattern-[largura]x[altura].png. - Copiar snippet CSS de fundo: Gera um canvas de tile único e copia três propriedades CSS para a área de transferência:
background-image,background-repeatebackground-size.
Como usar o Seamless Pattern Maker
Passo 1: Carregar sua imagem tile
Arraste um arquivo de imagem para a área de upload ou clique para procurar um arquivo. Qualquer formato de imagem suportado nativamente pelo seu navegador é aceito. As dimensões da imagem tile são exibidas abaixo do thumbnail — por exemplo, "64 x 64px". Se você carregar um arquivo com mais de 10 MB, a ferramenta mostra o erro "Arquivo muito grande" e o rejeita. Após um upload bem-sucedido, o canvas de pré-visualização renderiza imediatamente o padrão de tiling usando configurações padrão.
Boas imagens tile são aquelas que se repetem naturalmente sem costuras visíveis — texturas que fazem tile de forma uniforme, padrões de ícones, formas geométricas ou imagens projetadas intencionalmente para fazer tile. Padrões regulares como chevrons, pontos ou tramas de tecido funcionam particularmente bem.
Passo 2: Selecionar um modo de tiling
Quatro botões de modo aparecem na seção Controles:
- Normal: Grade padrão, todos os tiles alinhados em linhas e colunas.
- Meio tijolo: Linhas ímpares são deslocadas para a direita pela metade de um passo de tile (incluindo gap), exatamente como um padrão de parede de tijolo padrão.
- Meio queda: Colunas ímpares são deslocadas para baixo pela metade de um passo de tile, criando um efeito de escalonamento vertical comumente visto em papel de parede e padrões de tecido.
- Espelhado: Cada coluna alternada é virada horizontalmente (
ctx.scale(-1, 1)) e cada linha alternada é virada verticalmente (ctx.scale(1, -1)), criando reflexos simétricos nas bordas dos tiles.
Clique em cada modo para ver o efeito imediatamente no canvas.
Passo 3: Ajustar escala, rotação e gap
Três controles deslizantes ajustam o tiling:
- Escala (5%–400%): A 100%, o tile é renderizado em seu tamanho de pixel natural. Aumente para 200% para tornar o tile grande e o padrão mais visível; diminua para 50% para um micro-padrão denso.
- Rotação (0°–360°): Rotacione os tiles para criar efeitos de listras diagonais ou adicionar dinamismo a um padrão. Uma rotação de 45° de um tile com listras cria um padrão de listras diagonais.
- Gap (-50 a 50px): Valores positivos adicionam espaçamento entre tiles preenchido com a cor de fundo. Valores negativos sobrepõem tiles adjacentes para efeitos em camadas.
Passo 4: Configurar tamanho do canvas e cor de fundo
Insira a largura e altura do canvas de saída (100–4096px cada) nos dois campos numéricos. A pré-visualização ao vivo escala para caber na tela, mas o canvas real é renderizado nas dimensões especificadas. Para testar fundo CSS, 800×600 é suficiente. Para exportação para impressão, use 2400×2400 ou maior.
Clique no swatch de cor de fundo para escolher a cor de preenchimento entre e ao redor dos tiles.
Passo 5: Exportar como PNG ou copiar CSS
Clique no botão PNG para baixar o canvas renderizado como pattern-[largura]x[altura].png. Use essa imagem como textura em software de design, motores de jogos ou como elemento <img>.
Clique em CSS para copiar um snippet CSS pronto para usar para a área de transferência. O snippet renderiza um único tile em um canvas separado e o codifica como uma URI de dados base64. As três propriedades copiadas são:
background-image: url("data:image/png;base64,...");
background-repeat: repeat;
background-size: 72px 72px;
Os valores de background-size são a largura do tile em escala mais o gap e a altura do tile em escala mais o gap. Cole isso diretamente na sua folha de estilos.
Exemplos práticos
Fundo de alvenaria para um site
Faça upload de uma textura de tijolo 128×64. Selecione o modo "Meio tijolo", defina escala para 100%, gap para 2px e cor de fundo #2c1810 (marrom argamassa escuro). Defina o canvas para 800×600. A pré-visualização mostra um padrão de tijolo realista. Copie o snippet CSS e cole-o em uma regra CSS .hero-section.
Padrão de listras meio queda para um banner
Faça upload de um tile de listras 40×40 (uma listra diagonal unicolora em fundo transparente, salva como PNG). Selecione "Meio queda", defina escala para 150%, rotação 45°, gap 0px. As listras se combinam com o offset de meio queda para criar um padrão de listras denso e escalonado. Exporte como PNG 1200×400 para uso como fundo de banner.
Tile caleidoscópio para um design de impressão
Faça upload de um tile geométrico 100×100 com um padrão colorido em um quadrante. Selecione "Espelhado", escala 100%, rotação 0°, gap 0px. O modo espelhado reflete o tile horizontal e verticalmente em uma unidade de repetição 2×2. Exporte em 2400×2400 para um padrão de alta resolução pronto para impressão.
Padrão de fundo CSS para um componente de cartão
Faça upload de um pequeno tile de textura de pontos (PNG 32×32). Selecione "Normal", escala 75%, gap 6px, fundo #f8f8f8. Canvas 400×400. Copie o snippet CSS. Na sua folha de estilos:
.card-background {
background-image: url("data:image/png;base64,...");
background-repeat: repeat;
background-size: 30px 30px;
}
Os pontos fazem tile de forma uniforme em todo o cartão, independentemente do seu tamanho.
Dicas e melhores práticas
Use tiles projetados especificamente para serem sem costura. A ferramenta renderiza qualquer tile que você fornecer; ela não torna tiles automaticamente sem costura em suas bordas. Se o seu tile tem conteúdo que não combina em suas bordas, você verá linhas de costura visíveis.
O modo espelhado elimina a repetição visível. Mesmo tiles sem costura geralmente ficam aceitáveis no modo espelhado porque os reflexos disfarçam as bordas. Tente o modo espelhado primeiro se seu tile não foi projetado para fazer tile.
A rotação adiciona tiles de margem ao canvas. A ferramenta calcula uma margem igual a 2 × Math.max(larguraTile, alturaTile) e renderiza tiles além dos limites do canvas para preencher quaisquer lacunas causadas pela rotação.
O snippet CSS usa uma URL de dados de tile único. A exportação CSS cria um novo canvas com tamanho (larguraTile + gap) × (alturaTile + gap) para o snippet. Isso mantém a URL de dados pequena e deixa o navegador lidar com o tiling infinito nativamente via background-repeat: repeat.
As configurações são compartilháveis via URL. A ferramenta usa useShareableState para codificar suas configurações atuais na URL. Compartilhe a URL com um colaborador e ele verá sua configuração exata.
O controle de gap vai de -50 a 50px. Para efeitos de rejunte, um gap positivo de 3 a 8px com cor de fundo contrastante é tipicamente realista.
Problemas comuns e solução de problemas
Erro "Arquivo muito grande": A ferramenta rejeita arquivos com mais de 10 MB. Comprima sua imagem tile para menos de 10 MB antes de fazer upload.
Erro "Formato inválido": A ferramenta requer um arquivo de imagem válido (file.type.startsWith('image/')). Arquivos que não são imagens serão rejeitados.
O padrão mostra linhas de costura visíveis: As bordas do tile não combinam. A ferramenta renderiza qualquer tile que você fizer upload. Para um resultado sem costura, use uma imagem projetada especificamente para fazer tile sem bordas visíveis.
Canvas aparece em branco após o upload: A pré-visualização ao vivo só renderiza quando uma imagem tile está carregada. Se o upload foi bem-sucedido (thumbnail está visível) mas o canvas está em branco, tente limpar e fazer upload novamente.
Toast "Nenhuma imagem carregada" ao exportar: Clique em PNG ou CSS sem uma imagem carregada. Faça upload de uma imagem tile primeiro.
O snippet CSS tem uma URL de dados muito grande: O canvas de tile único é dimensionado proporcionalmente à sua configuração de escala. Para CSS de produção, é melhor salvar o tile como um arquivo de imagem separado e referenciá-lo com uma URL regular.
Privacidade e segurança
O Seamless Pattern Maker processa todas as imagens completamente no seu navegador. Imagens tile são carregadas usando a API FileReader e armazenadas como dados na memória. Todas as operações do canvas (desenhar, escalar, rotacionar, espelhar) usam a API Canvas 2D do navegador sem comunicação com servidor. A exportação CSS copia dados apenas para sua área de transferência local. A ferramenta funciona offline depois que a página foi carregada uma vez.
Perguntas frequentes
O Seamless Pattern Maker é gratuito? Sim, completamente gratuito. Os quatro modos de tiling, todos os controles, exportação PNG e cópia CSS estão disponíveis sem custo e sem necessidade de conta.
O Seamless Pattern Maker funciona offline? Sim. Após o carregamento inicial da página, toda a renderização usa a API Canvas 2D no seu navegador. Nenhuma requisição de rede é feita durante a criação ou exportação de padrões.
Meus dados estão seguros com o Seamless Pattern Maker? Suas imagens tile nunca saem do seu dispositivo. A API FileReader as carrega na memória local do navegador, e todo o processamento e exportação é realizado no lado do cliente.
Quais formatos de imagem posso usar como tiles? Qualquer formato de imagem suportado nativamente pelo seu navegador: JPEG, PNG, WebP, GIF, SVG (como elemento de imagem) e em navegadores mais novos, AVIF e HEIC. GIFs animados usarão apenas o primeiro quadro.
Qual é o tamanho máximo do arquivo tile? A ferramenta aplica um limite de tamanho de arquivo de 10 MB. Arquivos maiores que 10 MB acionarão o erro "Arquivo muito grande" e serão rejeitados.
Como funciona o modo de tiling meio tijolo? No modo meio tijolo, cada linha ímpar (índice de linha % 2 === 1) desloca sua posição X inicial para a direita por stepX / 2. Isso cria o clássico padrão de aparelho de tijolo onde as juntas horizontais são escalonadas.
Como funciona o modo de tiling espelhado? O espelhamento é aplicado por tile durante a renderização do canvas. Para cada tile, a ferramenta verifica se seu índice de coluna é ímpar (virar horizontalmente) e se seu índice de linha é ímpar (virar verticalmente). Aplica ctx.scale(-1, 1) e/ou ctx.scale(1, -1) antes de desenhar o tile e restaura o estado do canvas depois.
Posso usar o snippet CSS em produção? Pode, mas para uso em produção um arquivo de imagem separado é geralmente preferível. URLs de dados incorporadas em CSS não podem ser armazenadas em cache independentemente pelo navegador, aumentam o tamanho da folha de estilos e são difíceis de atualizar.
Como a rotação afeta a grade de tiles? A rotação é aplicada a cada tile individualmente usando ctx.save(), ctx.translate(), ctx.rotate() e ctx.restore(). A grade de tiles em si não é rotacionada — apenas a imagem do tile dentro de cada posição é rotacionada.
Posso salvar as configurações do meu padrão? Sim. As configurações são automaticamente codificadas na URL via useShareableState, de modo que favoritar ou compartilhar a URL preserva sua configuração atual. Apoiadores premium também podem salvar presets com nome para escala, rotação, gap, dimensões do canvas, cor de fundo e modo de tiling.
Ferramentas relacionadas
- Em breve: SVG Pattern Generator — Crie padrões vetoriais escaláveis de forma programática sem precisar de uma imagem tile de origem.
- Em breve: Placeholder Generator — Gere imagens de placeholder de cor plana para usar como entradas de tile rápidas para testar o criador de padrões.
- Em breve: Noise Texture — Gere texturas de ruído procedural que funcionam bem como entradas de tile sem costura.
- Em breve: Image Effects — Aplique filtros à sua imagem tile antes de usá-la como entrada para o criador de padrões.
Experimente o Seamless Pattern Maker agora: Glyph Widgets Seamless Pattern Maker