Sábado, Julio 20, 2019

Convertir documento PDF en texto en GNU/Linux

Convertir-documento-PDF-en-texto-01

En esta entrada presento dos formas de convertir documentos PDF a texto editable en GNU/Linux, utilizando una herramienta gráfica (Calibre) y una herramienta de línea de comandos (pdftotext).

Cabe señalar que las dos herramientas utilizadas para extraer texto de los archivos PDF mencionados en este artículo no pueden extraer el texto si el PDF está hecho de imágenes (por ejemplo, páginas de libros escaneadas / imágenes).

Convertir PDF a texto con Calibre (GUI)

Calibre es una suite de software de libro electrónico gratuito y de código abierto. Soporta la organización, visualización, edición y conversión de libros electrónicos, soportando una amplia gama de formatos. La aplicación se ejecuta en GNU/Linux, macOS y Microsoft Windows.

Calibre debería estar disponible en los repositorios de tu distribución GNU/Linux, y deberías ser capaz de instalarlo usando cualquier tienda de software que tengas en tu sistema, ya sea Debian, Ubuntu, Linux Mint, Fedora, openSUSE o Arch GNU/Linux..

Calibre también se puede instalar en GNU/Linux usando el paquete Flathub (requiere configurar Flathub / Flatpak en algunas distribuciones).

Ahora que Calibre ya está instalado en tu sistema, ejecútalo y haz clic en Añadir libros para añadir el PDF (o varios PDF – Calibre admite la conversión por lotes de varios archivos PDF a texto) que desees convertir a texto.

En la lista de libros, selecciona el PDF (o varios PDF para la conversión por lotes a .txt) que desees convertir a texto y haz clic en el botón Convertir libros. En la parte superior derecha de la ventana de conversión, selecciona TXT como formato de salida:

Convertir-documento-PDF-en-texto-02

Hay muchas opciones que puedes modificar en este cuadro de diálogo de conversión. Por ejemplo, puedes elegir eliminar automáticamente el espacio entre párrafos o insertar una línea en blanco entre párrafos (Look & Feel -> Layout). También puedes establecer la codificación de caracteres y el estilo de final de línea (system, unix, windows, old_mac), e incluso formatearlo para reducirlo.

Convertir-documento-PDF-en-texto-03

Después de terminar la configuración, haz clic en el botón Aceptar para comenzar a convertir el PDF en texto. El archivo.txt convertido se encuentra en el directorio donde se ha establecido la ubicación de la biblioteca Calibre (y luego en las subcarpetas AuthorName/BookName; si no se puede determinar el autor o el nombre del libro, la subcarpeta se llama “Unknown”).

Lo que le falta a Calibre en este caso es una forma de convertir sólo una página o un rango de páginas – actualmente sólo puede convertir archivos PDF enteros a texto.

Convertir PDF a texto con pdftotext (línea de comandos)

Pdftotext es una utilidad de línea de comandos que convierte archivos PDF a texto plano. Tiene muchas opciones, incluyendo la capacidad de especificar el rango de páginas a convertir, mantener el diseño físico original del texto lo mejor posible, establecer terminaciones de línea (unix, dos o mac), e incluso trabajar con archivos PDF protegidos con contraseña.

Convertir-documento-PDF-en-texto-04

Pdftotext es parte del paquete poppler / poppler-utils / poppler-tools (dependiendo de la distribución GNU/Linux que estés usando). Instala este paquete de la siguiente manera:

  • Debian, Ubuntu, Linux Mint:
sudo apt install poppler-utils
  • Fedora:
sudo dnf install poppler-utils
  • openSUSE:
sudo zypper install poppler-tools
  • Arch:
sudo pacman -S poppler

En otras distribuciones GNU/Linux utiliza tu gestor de paquetes para instalar el paquete poppler / poppler-utils.

Ahora que el paquete está instalado, puedes convertir un archivo PDF a texto plano y conservar su diseño (recomiendo usar esta opción de diseño para mantener el diseño físico original, pero también puedes intentarlo sin él) con:

pdftotext -layout entrada.pdf salida.txt

Deberás reemplazar entrada.pdf por el nombre del archivo PDF y salida.txt por el nombre con el que deseas que se llame el archivo TXT generado. También agrega las rutas antes de los nombres de archivo si es necesario (por ejemplo ~/Documentos/entrada.pdf). Si no se especifica ningún archivo de texto de salida, pdftotext nombrará el archivo con el mismo nombre que el archivo PDF original ¿Qué sucede si sólo quieres convertir un rango de páginas del PDF en texto, en lugar de todo el archivo PDF? Utiliza -f (primera página a convertir) y -l (última página a convertir) seguidas del número de página, así:

pdftotext -layout -f M -l N entrada.pdf

Reemplaza M y N con el número de la primera y última página a extraer, y entrada.pdf con el nombre del archivo PDF.

Si no deseas insertar saltos de página entre páginas, añade -nopgbrk:

pdftotext -layout nopgbrk entrada.pdf

 

Fuente: maslinux

Compártelo. ¡Gracias!

 
Grupo Digital de Ayuda! Laboratorio Linux! - Linux para todos.

¿Quién está en línea?

Hay 167 invitados y ningún miembro en línea

Contador de Visitas

9855818
Hoy Hoy 1115
Ayer Ayer 2169
Esta semana Esta semana 11982
Este mes Este mes 42520
Total de Visitas Total de Visitas 9855818

Día con más
visitantes

06-04-2019 : 2722

Gracias por su visita