Cartões de visita por folha
Esta calculadora transforma as medidas da folha, do cartão acabado e dos espaçamentos em uma grade prática de impressão. Ela informa colunas, linhas, total, área ocupada e sobra, além de comparar a posição normal com uma rotação de 90 graus. Use uma única unidade em todos os campos para obter um resultado válido antes de montar a arte ou comprar papel.
Executar grátis
Informe as medidas do trabalho final
Digite a largura e a altura úteis da folha e depois as dimensões finais de um cartão. Todas as medidas devem usar a mesma unidade. Caso a impressora não alcance as bordas, desconte antes as margens não imprimíveis. Informe o espaçamento horizontal entre colunas e o vertical entre linhas. Esses espaços existem apenas entre cartões vizinhos, nunca no contorno: três colunas têm dois intervalos internos. Para considerar sangria, aumente o tamanho do cartão até a dimensão de imposição ou inclua a separação necessária nos espaçamentos, conforme o processo. Deixar essas tolerâncias explícitas evita contagem dupla e torna a estimativa fácil de conferir e repetir.
Entenda a comparação das orientações
A ferramenta avalia duas grades uniformes. A opção padrão usa a largura do cartão no sentido horizontal da folha; a opção girada troca largura e altura. Em cada uma, calcula a maior quantidade inteira de colunas e linhas, sem contar peças parciais. Recomenda a grade com maior total e mantém a orientação padrão em caso de empate, garantindo previsibilidade. As duas alternativas permanecem no resultado para que você considere fibra do papel, acabamento ou fluxo de corte. As dimensões ocupadas incluem cartões e intervalos internos. A sobra representa a área livre à direita e abaixo quando a grade começa no canto superior esquerdo; ela pode ser dividida para centralizar o conjunto.
Use o resultado com segurança na produção
Considere o total uma verificação de capacidade antes de encomendar papel ou definir o plano de corte. Confirme se as dimensões incluem sangria, marcas e folgas exigidas pelo seu processo. Guilhotinas e mesas digitais podem pedir espaços diferentes, e a direção da fibra pode justificar uma orientação com rendimento menor. Multiplique os cartões por folha pela quantidade de folhas para obter a produção teórica e acrescente separadamente perdas de acerto, cor e acabamento. A calculadora não presume um percentual de desperdício. Se nenhum cartão inteiro couber, o total será zero; medidas obrigatórias nulas, negativas ou não finitas são recusadas. A API custa US$ 0,002 por solicitação e retorna JSON determinístico para sistemas de orçamento.
Casos de uso
Planejar uma tiragem
Estime quantas folhas serão necessárias antes de comprar o estoque de papel.
Comparar orientações
Veja se girar todos os cartões aumenta o aproveitamento de uma folha específica.
Conferir espaço de corte
Inclua intervalos horizontais e verticais e examine a área restante.
Perguntas frequentes
Quanto custa a calculadora?
Ela é grátis no navegador e custa US$ 0,002 por solicitação de API.
Posso usar polegadas em vez de milímetros?
Sim. Use qualquer unidade, desde que todas as medidas adotem a mesma unidade.
Ela gira cartões isolados para preencher sobras?
Não. Compara duas grades uniformes: todos os cartões normais ou todos girados.
Os espaçamentos entram nas bordas da folha?
Não. Eles só ficam entre cartões adjacentes; desconte as margens externas separadamente.
Como devo considerar a sangria?
Informe o tamanho total de imposição ou incorpore a folga nos espaçamentos, conforme a gráfica.
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/doc/business-cards-per-sheet \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"sheet_width":210,"sheet_height":297,"card_width":85,"card_height":55}'const res = await fetch("https://api.kit.forhosting.com/doc/business-cards-per-sheet", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"sheet_width": 210,
"sheet_height": 297,
"card_width": 85,
"card_height": 55
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/doc/business-cards-per-sheet",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"sheet_width": 210,
"sheet_height": 297,
"card_width": 85,
"card_height": 55
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/doc/business-cards-per-sheet", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"sheet_width":210,"sheet_height":297,"card_width":85,"card_height":55}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"sheet_width":210,"sheet_height":297,"card_width":85,"card_height":55}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/doc/business-cards-per-sheet", 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
{
"sheet_width": 210,
"sheet_height": 297,
"card_width": 85,
"card_height": 55
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "doc.business_cards_per_sheet",
"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 | 25 |
max_pages | 200 |
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. |