Herramienta / PDF

PDF a Texto

PDF a Texto de Kitly se ejecuta localmente en el navegador y convierte operadores de texto seleccionable en texto plano. No lee píxeles como texto.

EstadoSelecciona un PDF para comenzar. El archivo permanece en este navegador.

Páginas-

Selecciona un PDF para comenzar. El archivo permanece en este navegador.

Cómo extraer texto de un PDF

La herramienta lee la capa de texto ya guardada en el PDF. Funciona mejor con documentos digitales, no con escaneos.

  1. Elige un PDF

    Selecciona el documento y confirma el nombre y tamaño mostrados en el navegador. El archivo se lee localmente.

  2. Extrae la capa de texto

    Inicia la extracción y mantén la pestaña abierta mientras cada página se procesa en orden.

  3. Revisa antes de reutilizar

    Comprueba títulos, columnas, listas, saltos de página y caracteres especiales; después copia el resultado o descárgalo como texto.

Cuándo funciona mejor PDF a texto

  • Intenta seleccionar una frase en tu lector de PDF habitual; el texto seleccionable es una buena señal.
  • Revisa tablas y diseños con varias columnas porque el orden visual no siempre queda almacenado claramente en el PDF.
  • Mantén el PDF original cerca al citar fragmentos para comprobar nombres, números y puntuación.

Limitaciones conocidas de PDF

  • Las páginas escaneadas o basadas solo en imágenes necesitan OCR, que esta herramienta aún no realiza.
  • Los PDF protegidos con contraseña o cifrados no son compatibles.
  • La extracción no conserva la tipografía, imágenes, espaciado exacto ni diseño original de las páginas.

Guía práctica

Estos ejemplos registran lo que el extractor devolvió para PDFs originales de una página: texto seleccionable con acentos, dos fragmentos lado a lado y una página solo con imagen. Un archivo cifrado, uno dañado y uno vacío permiten comparar los mensajes.

La extracción necesita JavaScript porque PDF.js lee el archivo elegido en el navegador. Los ejemplos medidos, las decisiones y el diagnóstico de abajo siguen siendo legibles sin JavaScript.

Muestras PDF medidas

Cada archivo se creó para Kitly. El texto se obtuvo con pdfjs-dist 4.10.38 en Node.js 22.19.0, con el mismo armado de líneas de esta página. No hay un documento de terceros ni datos personales.

El texto seleccionable conserva los acentos

Un PDF digital de una página, con dos líneas WinAnsi, extrae las dos líneas, incluidos é, ã y ç.

Texto guardado en el PDF

Kitly sample
Café da manhã: pão e ação.
Ajustes
Archivo selectable-accents.pdf, 677 B, 1 página
Primera línea x=72, y=720
Segunda línea x=72, y=692

Texto extraído

Kitly sample
Café da manhã: pão e ação.

Qué revisar

Los acentos se mantuvieron, y el hueco vertical de 28 puntos se convirtió en un salto de línea. El .txt descargable es esa cadena exacta, 44 B, sin un salto extra al final. El resultado sale de operadores de texto que ya estaban en el archivo.

Advertencias

  • La fuente, el tamaño y el espaciado exacto no forman parte del archivo de texto.
  • El ejemplo con imagen de esta página muestra qué ocurre cuando esos operadores de texto no existen.

Archivos del ejemplo

Los fragmentos lado a lado quedan en una línea

Dos fragmentos en la misma línea base, en posiciones horizontales distintas, se unen en una sola línea.

Operadores de texto en el PDF

Left café
en x=72, y=500

Right ação
en x=320, y=500
Ajustes
Archivo two-column-layout.pdf, 670 B, 1 página
Fragmento izquierdo x=72, y=500
Fragmento derecho x=320, y=500

Texto extraído

Left café Right ação

Qué revisar

PDF.js devolvió los dos fragmentos en la misma línea. La herramienta une los elementos de la misma línea con espacios, así que el resultado de 23 B es “Left café Right ação”. Los acentos se mantuvieron. El hueco horizontal no se conserva; compara esa línea con el PDF antes de tratarla como el orden de lectura.

Advertencias

  • Una tabla o una página de varias columnas puede aplanarse del mismo modo. Comprueba nombres y números en el original.
  • El .txt contiene solo la línea extraída, sin salto extra al final.

Archivos del ejemplo

Una página solo con imagen queda vacía

Una página que pinta una imagen sintética y no tiene operadores de texto produce una cadena vacía y el mensaje de texto seleccionable.

Contenido de la página

Imagen DeviceGray de 16×16, sin operadores de texto. 921 B, 1 página.

Resultado de la herramienta

No se encontró texto seleccionable. Este PDF puede estar escaneado o basado en imágenes.

Qué revisar

La lista de elementos de texto llegó vacía, y la cadena extraída también. La herramienta no leyó píxeles como palabras. El OCR es otro proceso, y esta página no lo ejecuta. Una página en blanco válida, empty-page.pdf de 421 B, produjo el mismo mensaje. El texto indica que no había texto seleccionable.

Advertencias

  • La imagen es un patrón original de 16×16 hecho para este ejemplo. No es el escaneo de un documento real.
  • Copiar y descargar permanecen desactivados cuando la cadena extraída está vacía.

Archivos del ejemplo

Archivo cifrado, dañado y de cero bytes

Estas entradas fallan antes de mostrar texto, y los mensajes no son iguales.

Mensajes de la herramienta

encrypted-example.pdf (933 B): Los PDF cifrados aún no son compatibles.
corrupt.pdf (64 B): No se pudo leer el PDF seleccionado en este navegador.
zero-byte.pdf (0 B): No se pudo leer el PDF seleccionado en este navegador.

Qué revisar

La muestra cifrada hace que PDF.js responda “No password given”, y esta página lo convierte en el mensaje de PDF cifrado. La contraseña publicada es example; la herramienta no la pide ni la envía. Con esa contraseña, PDF.js lee el texto “Public fixture”, lo que muestra que el archivo está cifrado. La muestra dañada genera “Invalid PDF structure.” La muestra de cero bytes genera “The PDF file is empty, i.e. its size is zero bytes.” Esas dos pasan al mensaje genérico de lectura.

Advertencias

  • example es la contraseña publicada de la muestra, no una credencial de una cuenta.
  • Quitar el cifrado tiene que hacerse en otro programa. Esta página sigue rechazando el archivo.

Archivos del ejemplo

Cuándo basta con la extracción

Elige según lo que ya está guardado en el PDF. Esta herramienta lee operadores de texto. Deja las imágenes sin interpretar.

Texto digital seleccionable

Úsalo cuando: Un lector PDF habitual permite seleccionar una frase, como en selectable-accents.pdf.

Compromisos: El archivo de texto pierde fuentes, imágenes y espaciado exacto. Los acentos de la muestra se conservaron.

Columnas, tablas o líneas posicionadas

Úsalo cuando: Puedes comparar el resultado con el PDF, como en los dos fragmentos en y=500.

Compromisos: Los fragmentos de la misma línea pueden unirse. La muestra quedó en una línea de 23 B.

Página escaneada o solo con imagen

Úsalo cuando: Las palabras existen solo como píxeles y usas un programa de OCR aparte.

Compromisos: Este extractor devuelve el mensaje de texto seleccionable vacío. No infiere palabras a partir de la imagen.

Cuando el resultado parece incorrecto

Los mensajes de abajo son los que muestra esta página. Los límites de 25 MB y 200 páginas se probaron en memoria; esos archivos grandes no se publican.

Problema: Los PDF cifrados aún no son compatibles.

Causa probable: PDF.js respondió “No password given” para encrypted-example.pdf.

Qué hacer: Abre el archivo en un programa que acepte la contraseña, guarda una copia sin cifrar y extrae esa copia. Conocer la contraseña example no cambia esta página.

Problema: No se pudo leer el PDF seleccionado en este navegador.

Causa probable: corrupt.pdf no tiene una estructura PDF válida. zero-byte.pdf está vacío, y PDF.js informa que el tamaño del archivo es cero.

Qué hacer: Sustituye el archivo por una exportación nueva del programa original.

Problema: No se encontró texto seleccionable. Este PDF puede estar escaneado o basado en imágenes.

Causa probable: La página no tiene operadores de texto. scan-only.pdf y empty-page.pdf hicieron esto.

Qué hacer: Intenta seleccionar una frase en un lector PDF. Si no se puede seleccionar, las palabras no están en una capa de texto. El OCR tiene que hacerse en otro lugar.

Problema: Elige un PDF de hasta 25 MB.

Causa probable: La comprobación de tamaño admite 26.214.400 bytes y rechaza 26.214.401 bytes antes de que PDF.js abra el archivo.

Qué hacer: Divide o vuelve a comprimir el PDF y pruébalo de nuevo. El límite de 40 megapíxeles de las herramientas de imagen no se aplica aquí, porque esta herramienta no descodifica las imágenes de la página en píxeles.

Problema: Elige un PDF de hasta 200 páginas.

Causa probable: Un PDF de 200 páginas en memoria superó la comprobación. Un PDF de 201 páginas en memoria se detuvo después de conocer el número de páginas.

Qué hacer: Divide el documento en partes de 200 páginas o menos y extrae cada parte.

Problema: Elige un PDF con extensión .pdf y tipo MIME application/pdf coincidentes.

Causa probable: Un archivo llamado notes.txt, con tipo text/plain, fue rechazado por la misma comprobación que la página usa antes de extraer.

Qué hacer: Elige un archivo cuyo nombre termine en .pdf y cuyo tipo en el navegador sea application/pdf.

Fuentes relevantes

Describen el formato del archivo y la biblioteca usada para leer la capa de texto.

Preguntas frecuentes

¿Para qué sirve PDF a Texto?

PDF a Texto extrae operadores de texto seleccionable de un PDF para copiar fragmentos, buscar contenido o mover el texto a notas. No conserva el diseño de columnas.

¿Funciona con PDFs escaneados?

No. Las páginas escaneadas o solo de imagen necesitan OCR, que esta herramienta no ejecuta. Los archivos solo de imagen devuelven un resultado vacío y dejan copiar y descargar desactivados.

¿Se subirán los archivos PDF?

No. La extracción se ejecuta en el navegador con PDF.js, así que el PDF seleccionado no necesita enviarse a un servidor.

¿Por qué dos columnas quedaron en una línea?

Los fragmentos de la misma línea base se unen con espacios. En la muestra publicada, el texto en x=72 y x=320 quedó como “Left café Right ação”. Compara esa línea con el PDF antes de citarla.

¿Un PDF cifrado se abre si conozco la contraseña?

No. La herramienta no pide contraseña. La muestra publicada encrypted-example.pdf usa la contraseña example y aun así muestra el mensaje de PDF cifrado.