IntlPull
Comparison
8 min read

Contexto de las capturas de pantalla con OCR: IntlPull supera a Lokalise en localización visual

Descubra cómo IntlPull's self-hosted Tesseract OCR and screenshot context feature gives translators visual context while saving you money compared to Lokalise's cloud-based solution.

IntlPull Team
IntlPull Team
03 Feb 2026, 11:44 AM [PST]
On this page
Summary

Descubra cómo IntlPull's self-hosted Tesseract OCR and screenshot context feature gives translators visual context while saving you money compared to Lokalise's cloud-based solution.

El problema: los traductores carecen de contexto

Uno de los mayores retos de la localización es el ** contexto **.Los traductores a menudo ven una cadena como "Enviar" sin saber:

  • ¿Es un botón o una etiqueta ?
    • ¿Está en la parte superior o inferior de la pantalla ?
      • ¿Cuál es la interfaz de usuario que lo rodea ?
        • ¿Cuánto espacio hay disponible ?

** Resultado :** Traducciones genéricas que no se ajustan a la interfaz de usuario, problemas de truncamiento e interminables idas y venidas entre traductores y desarrolladores.

La solución: Contexto de las capturas de pantalla

Screenshot context resuelve esto permitiéndote:

  1. ** Cargar capturas de pantalla ** de su aplicación o sitio web
  2. ** Etiquetar claves de traducción ** con cuadros delimitadores que muestran exactamente dónde aparecen
  3. ** Detección automática de texto ** mediante OCR para acelerar el proceso de etiquetado

Cuando los traductores trabajan en una clave, ven inmediatamente el contexto visual.

IntlPull vs Lokalise: El enfrentamiento de las capturas de pantalla

Tanto IntlPull como Lokalise ofrecen funciones de captura de pantalla, pero la implementación difiere drásticamente.

Comparación de características

| Función IntlPull Lokalise | ---------| ----------| ----------| | Carga de capturas de pantalla Incluido en todos los planes de pago Complemento de pago | Autodetección de OCR Autoalojado en Tesseract(gratuito) Basado en la nube(pago por solicitud) | Carga por lotes Sí No | Coincidencia de clave difusa Coincidencia de Levenshtein + subcadena Coincidencia básica | Búsqueda de clave a captura de pantalla | Editor de cuadro delimitador, basado en lienzo moderno, superposición básica | Acceso API API REST completo Limitado

Comparación de costes

Aquí es donde se pone interesante.

** Precios de OCR de Lokalise:**

  • Llamadas a la API de Cloud Vision: 0,005 - 0,02 dólares por solicitud
    • Para 1.000 capturas de pantalla con OCR mensual: ** 60 - 240$ / año sólo en tarifas de OCR **
      • Además, la función de captura de pantalla puede ser un complemento de pago

        ** Precios del OCR de IntlPull

        • Tesseract autoalojado: ** 0$ por solicitud **
          • Sin cargos adicionales
            • Incluido en todos los planes de pago

La ventaja del autoalojamiento

IntlPull utiliza ** Tesseract OCR **, el motor de OCR de código abierto estándar del sector, que se ejecuta en su propia infraestructura:

Terminal
1# Tesseract is installed on the server
2tesseract --version
3# tesseract 5.3.0
4
5# No cloud API calls
6# No per-request fees
7# No data leaving your infrastructure

**Ventajas

  • Privacidad: Los datos de las capturas de pantalla nunca salen de su infraestructura
  • Velocidad: Sin latencia de red a las API de la nube
  • Coste: Coste marginal cero por operación de OCR
  • Fiabilidad: Sin interrupciones de API de terceros

Cómo funciona la detección automática

El proceso de OCR de IntlPull es sorprendentemente sofisticado:

Paso 1: Detección de texto

Tesseract escanea la captura de pantalla y extrae regiones de texto con cuadros delimitadores:

JSON
1{
2  "detected_texts": [
3    {
4      "text": "Submit Order",
5      "x": 350,
6      "y": 480,
7      "width": 120,
8      "height": 40,
9      "confidence": 0.95
10    },
11    {
12      "text": "Cancel",
13      "x": 200,
14      "y": 480,
15      "width": 80,
16      "height": 40,
17      "confidence": 0.92
18    }
19  ]
20}

Paso 2: Coincidencia de claves difusas

El texto detectado se compara con las claves de traducción mediante varias estrategias:

  1. Coincidencia exacta (puntuación: 1,0)
  2. Coincidencia de subcadenas (puntuación: 0,9 x proporción)
  3. Distancia Levenshtein (similitud normalizada)

Esto maneja errores comunes de OCR como:

  • "Submit" frente a "Submitt" (tolerancia a errores tipográficos)
  • "SUBMIT" frente a "Submit" (insensible a mayúsculas y minúsculas)
  • "Submit Order" frente a "Submit" (coincidencia parcial)

Paso 3: Etiquetas sugeridas

La API devuelve asignaciones sugeridas de clave a región:

JSON
1{
2  "suggested_tags": [
3    {
4      "key_id": "abc123",
5      "key_name": "buttons.submit",
6      "x": 350,
7      "y": 480,
8      "width": 120,
9      "height": 40,
10      "confidence": 0.95,
11      "match_score": 1.0
12    }
13  ]
14}

Paso 4: Revisión humana

Los traductores revisan y confirman las sugerencias antes de aplicarlas. Esto evita falsos positivos y garantiza la precisión.

Flujo de trabajo real

Para desarrolladores

Terminal
1# Upload screenshots from CI/CD
2for screenshot in screenshots/*.png; do
3  curl -X POST \
4    -H "X-API-Key: ip_live_xxx" \
5    -F "file=@$screenshot" \
6    -F "tags=v2.5.0,checkout-flow" \
7    https://api.intlpull.com/api/v1/projects/PROJECT_ID/screenshots
8done

For Project Managers

  1. Vaya a la pestaña Capturas de pantalla en el panel de control
  2. Haga clic en "Detección automática" en cada captura de pantalla
  3. Revise las etiquetas sugeridas y confírmelas
  4. Los traductores ven ahora el contexto visual de todas las claves etiquetadas

Para traductores

Al traducir "buttons.submit", ven:

  • El botón real en la interfaz de usuario
  • El contexto circundante (lo que hay encima/debajo)
  • El espacio disponible para la traducción
  • Múltiples capturas de pantalla si la tecla aparece en diferentes lugares

Referencias de rendimiento

Hemos probado los tiempos de procesamiento del OCR en un servidor típico:

Tamaño de ImagenTiempo de TesseractRespuesta Total de API
< 1MB ~ 500ms ~ 1 segundo
1-5MB ~1-2 segundos ~2-3 segundos
5-20MB ~3-5 segundos ~5-7 segundos

Para la mayoría de las capturas de pantalla (pantallas de móvil, páginas web), el procesamiento se completa en menos de 2 segundos.

Comparación: Enfoque de Lokalise

Lokalise utiliza un enfoque basado en la nube:

Screenshot -> Cloud API -> Text Detection -> Response
           |
     Network latency + API costs

**Desventajas

  • Costes por solicitud que se acumulan
  • Latencia de red para cada operación
  • Dependencia de la disponibilidad de la API de terceros
  • Los datos de las capturas de pantalla se envían a servidores externos

Configuración de capturas de pantalla en IntlPull

Requisitos previos

Para despliegues autoalojados, instale Tesseract:

Terminal
1# macOS
2brew install tesseract
3
4# Ubuntu/Debian
5apt-get install tesseract-ocr
6
7# Docker
8FROM alpine:3.19
9RUN apk add tesseract-ocr

Uso de la API

Cargar una captura de pantalla:

Terminal
1curl -X POST \
2  -H "X-API-Key: YOUR_KEY" \
3  -F "file=@screenshot.png" \
4  -F "name=Checkout Page" \
5  -F "tags=checkout,mobile" \
6  https://api.intlpull.com/api/v1/projects/{projectId}/screenshots

Activar la detección automática:

Terminal
1curl -X POST \
2  -H "X-API-Key: YOUR_KEY" \
3  -H "Content-Type: application/json" \
4  -d '{"min_confidence": 0.7}' \
5  https://api.intlpull.com/api/v1/projects/{projectId}/screenshots/{screenshotId}/auto-detect

Crear etiquetas clave a partir de los resultados del OCR:

Terminal
1curl -X POST \
2  -H "X-API-Key: YOUR_KEY" \
3  -H "Content-Type: application/json" \
4  -d '{
5    "key_maps": [
6      {"key_id": "abc123", "x": 100, "y": 200, "width": 80, "height": 30, "auto_detected": true},
7      {"key_id": "def456", "x": 300, "y": 200, "width": 60, "height": 30, "auto_detected": true}
8    ]
9  }' \
10  https://api.intlpull.com/api/v1/projects/{projectId}/screenshots/{screenshotId}/keys/bulk

Integración SDK

TypeScript SDK lo hace aún más fácil:

TypeScript
1import { IntlPull } from '@intlpullhq/sdk';
2
3const client = new IntlPull({ apiKey: 'ip_live_xxx' });
4
5// Upload and auto-tag in one flow
6async function processScreenshot(filePath: string) {
7  // 1. Upload
8  const screenshot = await client.screenshots.upload(projectId, {
9    file: fs.readFileSync(filePath),
10    name: path.basename(filePath),
11    tags: ['v2.5.0'],
12  });
13
14  // 2. Auto-detect
15  const detection = await client.screenshots.autoDetect(
16    projectId,
17    screenshot.id,
18    { minConfidence: 0.7 }
19  );
20
21  // 3. Apply high-confidence matches
22  const highConfidence = detection.suggestedTags.filter(t => t.match_score >= 0.9);
23
24  if (highConfidence.length > 0) {
25    await client.screenshots.bulkCreateKeyMaps(projectId, screenshot.id, {
26      keyMaps: highConfidence.map(t => ({
27        keyId: t.key_id,
28        x: t.x,
29        y: t.y,
30        width: t.width,
31        height: t.height,
32        autoDetected: true,
33        confidence: t.match_score,
34      })),
35    });
36  }
37
38  console.log('Tagged ' + highConfidence.length + ' keys automatically');
39}

Mejores prácticas

1. Capturar pantallas representativas

  • Incluya todos los estados (vacío, cargando, error, éxito)
  • Capture diferentes tamaños de pantalla (móvil, tableta, escritorio)
  • Etiquetar los números de versión en los metadatos para su seguimiento

2. Utilizar etiquetas para la organización

Terminal
1# Tag by feature area
2-F "tags=checkout,payment"
3
4# Tag by version
5-F "tags=v2.5.0,sprint-42"
6
7# Tag by platform
8-F "tags=ios,dark-mode"

3. Establecer umbrales de confianza adecuados

  • 0.9+: Aplicación automática sin revisión (confianza alta)
  • 0.7-0.9: Sugerir pero exigir confirmación
  • <0.7: No sugerir (demasiada incertidumbre)

4. Revisar resultados OCR

El OCR no es perfecto. Problemas comunes:

  • Caracteres similares (O vs 0, l vs I)
  • Fuentes estilizadas
  • Texto con poco contraste

Las etiquetas automatizadas deben ser revisadas siempre por una persona.

Migración desde Lokalise

Si está migrando desde Lokalise:

Terminal
1# Export screenshots from Lokalise (if available via API)
2# Then bulk upload to IntlPull
3
4npx @intlpullhq/cli migrate --screenshots --from lokalise

Qué transfiere:

  • Imágenes de pantalla
  • Asignaciones existentes de clave a captura de pantalla
  • Etiquetas y metadatos

Conclusión: Por qué gana IntlPull

MetricIntlPullLokalise
Coste de OCR: 0 $, 60-240+ $ al año
Privacidad de los datos En las instalaciones En la nube (terceros)
Complejidad de la instalación Preinstalado Clave API + facturación
Operaciones por lotes Sí Limitado
Acceso a la API Completo Parcial

Para equipos que:

  • Procesan muchas capturas de pantalla
  • Se preocupan por la privacidad de los datos
  • Quieren costes predecibles
  • Necesitan automatizar la API

**El enfoque Tesseract autoalojado de IntlPull es el claro ganador

¿Listo para dar a los traductores el contexto que necesitan? Comience su prueba gratuita o lea la documentación completa.

Tags
screenshot
ocr
visual-context
lokalise
comparison
translator-tools
2026
IntlPull Team
IntlPull Team
Product

Building tools to help teams ship products globally. Follow us for more insights on localization and i18n.