Regla de tercios: líneas y puntos en píxeles
La calculadora de la regla de tercios convierte el ancho y el alto de una imagen en coordenadas de píxel precisas para dos líneas verticales, dos horizontales y sus cuatro puntos de intersección.
Ejecutar — gratis
Puede usar el resultado para colocar guías de composición en un editor, una interfaz de cámara, una herramienta de recorte, un sistema de diseño o un flujo automatizado. Si una dimensión no es divisible entre tres, se conservan las fracciones para que el entorno de dibujo decida cómo representarlas.
Qué representan las coordenadas de la regla de tercios
Una cuadrícula de regla de tercios divide una imagen rectangular en tres columnas y tres filas iguales. Esta calculadora coloca las guías verticales a un tercio y dos tercios del ancho indicado, y las horizontales a un tercio y dos tercios del alto. Sus cruces forman cuatro puntos de referencia que suelen emplearse para situar un sujeto, un rostro, un detalle del horizonte u otro elemento visual principal. Las coordenadas parten de la esquina superior izquierda: x aumenta hacia la derecha e y hacia abajo. Es la convención habitual en gráficos ráster, lienzos web, navegadores y editores de imágenes. La respuesta conserva el ancho y el alto originales y separa las líneas verticales, las horizontales y las intersecciones para facilitar su consumo. No examina píxeles, no valora la composición, no recorta la imagen ni desplaza ningún elemento. Proporciona geometría determinista para que otra aplicación pueda dibujarla, almacenarla, compararla o usarla como orientación compositiva.
Cómo se tratan los píxeles fraccionarios y la validación
Cada coordenada se calcula directamente desde la dimensión completa, sin redondeos intermedios. Con 1200 píxeles de ancho, las guías verticales quedan exactamente en x 400 y 800. Con 1000 píxeles, quedan en 333.3333333333333 y 666.6666666666666 según la representación numérica de JavaScript. Conservar estas fracciones es importante porque los sistemas de renderizado se comportan de manera distinta: un lienzo vectorial admite posiciones subpíxel, mientras que un proceso ráster puede preferir redondear hacia abajo, hacia arriba, al entero más cercano o según el dispositivo. Imponer un redondeo dentro de la calculadora eliminaría esa elección y podría producir regiones exteriores de diferente tamaño. El ancho y el alto deben ser enteros positivos y finitos, pues describen dimensiones de una imagen ráster. Un valor cero se rechaza expresamente porque una imagen sin ancho o alto carece de área geométrica útil. También se rechazan valores negativos, fracciones, campos ausentes, cadenas, infinitos y datos no numéricos mediante un error de entrada no válida.
Cómo usar el resultado en editores y procesos automatizados
Para dibujar la cuadrícula, trace cada guía vertical desde y igual a cero hasta el alto completo en la coordenada x devuelta. Trace cada guía horizontal desde x igual a cero hasta el ancho completo en su coordenada y. Los cuatro puntos de intersección ya enumerados pueden convertirse en controles, objetivos, marcadores o referencias de ajuste sin calcular combinaciones adicionales. En una vista adaptable, realice el cálculo con las dimensiones reales en píxeles de la imagen, no con su tamaño CSS, y aplique a las coordenadas el mismo factor de escala usado para mostrarla. En un proceso de recorte, calcule las líneas sobre el rectángulo final una vez conocidas sus dimensiones, porque los tercios corresponden al encuadre definitivo. La función es pura y no utiliza red, aleatoriedad, marcas temporales, decodificación de imágenes ni estado guardado. Por ello, una misma entrada produce siempre el mismo JSON y resulta adecuada para herramientas web, validación de servidor, pruebas y procesos reproducibles. El navegador es gratuito; una solicitud API cuesta $0.002.
Qué puede hacer con ella
Dibujar guías en un editor de imágenes
Convierta las dimensiones del lienzo activo en coordenadas para superponer una cuadrícula uniforme de regla de tercios.
Añadir objetivos de composición a una cámara
Sitúe cuatro marcadores de enfoque o colocación del sujeto desde la resolución actual, sin desplazamientos fijos.
Validar diseños de recorte
Calcule los tercios de un recorte propuesto para comparar elementos importantes con las guías de composición.
Preguntas frecuentes
¿Qué coordenadas devuelve?
El resultado contiene dos posiciones x verticales, dos posiciones y horizontales y los cuatro puntos donde se cruzan esas líneas.
¿Dónde está el origen de coordenadas?
El origen se encuentra en la esquina superior izquierda. X aumenta hacia la derecha e y hacia abajo.
¿Se redondean las posiciones fraccionarias?
No. Se conservan para que el sistema consumidor elija su propia política de alineación subpíxel o entera.
¿Qué ocurre si el ancho o el alto es cero?
La solicitud devuelve un error de entrada no válida porque una imagen de tamaño cero no admite una cuadrícula útil.
¿Cuánto cuesta una solicitud API?
Cada solicitud API cuesta $0.002. El mismo cálculo determinista también puede ejecutarse gratis en el navegador.
Para desarrolladores — acceso por API
Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.
Endpoint de API
¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.
Llámela desde su stack
curl -X POST https://api.kit.forhosting.com/image/grid-overlay-thirds \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"width":1200,"height":800}'const res = await fetch("https://api.kit.forhosting.com/image/grid-overlay-thirds", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"width": 1200,
"height": 800
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/image/grid-overlay-thirds",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"width": 1200,
"height": 800
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/image/grid-overlay-thirds", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"width":1200,"height":800}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"width":1200,"height":800}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/image/grid-overlay-thirds", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Ejemplo de solicitud
{
"width": 1200,
"height": 800
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "image.grid_overlay_thirds",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.
Precio
Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.
Límites
max_mb | 15 |
max_megapixels | 12 |
Errores
| HTTP | Código | Significado |
|---|---|---|
401 | unauthorized | API key ausente o inválida. |
402 | insufficient_balance | El saldo no cubre el precio de la tarea. |
404 | unknown_type | El tipo de tarea no existe. |
429 | rate_limited | Demasiadas peticiones. Use el webhook en vez de sondear. |