GNU/Linux >> Tutoriales Linux >  >> Debian

Cómo convertir PDF a texto en Linux (GUI y línea de comandos)

Este artículo presenta 2 herramientas para convertir documentos PDF a texto editable en Linux mediante una herramienta gráfica (calibre) y una herramienta de línea de comandos (pdftotext).

Vale la pena señalar que las dos herramientas mencionadas en este artículo para extraer texto de archivos PDF no pueden extraer el texto si el PDF está formado por imágenes (p. ej., páginas/imágenes escaneadas de libros).

Convertir PDF a texto con Calibre (GUI)

calibre es un paquete de software de libros electrónicos gratuito y de código abierto. Admite la organización, visualización, edición y conversión de libros electrónicos y admite una amplia variedad de formatos. La aplicación se ejecuta en Linux, macOS y Microsoft Windows.

Calibre debería estar disponible en los repositorios de su distribución de Linux, y debería poder instalarlo usando cualquier tienda de software que tenga en su sistema. Por ejemplo, para instalarlo en Debian, Ubuntu, Linux Mint, Fedora, openSUSE o Arch Linux use:

  • Debian, Ubuntu o Linux Mint:

sudo apt install calibre

  • Fedora:
sudo dnf install calibre

  • abrir SUSE:
sudo zypper install calibre

  • Arco Linux:
sudo pacman -S calibre

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

Existe otra forma de instalar calibre en Linux, que se explica en la página de descarga de la aplicación, donde también puede encontrar archivos binarios para macOS y Windows.

Relacionado:Cómo convertir PDF a imagen (PNG, JPEG) usando GIMP o la herramienta de línea de comandos pdftoppm

Después de instalar calibre en su sistema, inícielo y haga clic en Add books para agregar el PDF (o varios PDF; calibre admite la conversión por lotes de varios archivos PDF a texto) que desea convertir a texto.

De la lista de libros, seleccione el PDF (o varios PDF para la conversión por lotes a .txt) que desea convertir a texto y haga clic en Convert books Botón. En la esquina superior derecha de la ventana de conversión, seleccione TXT como Output format :

Hay muchas opciones que puede modificar en este cuadro de diálogo de conversión. Por ejemplo, puede eliminar automáticamente el espacio entre párrafos o insertar una línea en blanco entre párrafos (Look & Feel -> Layout ). También puede configurar la codificación de caracteres y el estilo de final de línea (Sistema, Unix, Windows, old_mac) e incluso formatearlo en Markdown.

Una vez que haya terminado con la configuración, haga clic en OK Botón para comenzar a convertir el archivo PDF a texto. El archivo .txt convertido está en el directorio donde especificó la ubicación de la biblioteca de calibre (y luego en AuthorName/BookName subcarpetas; si no se puede determinar el autor o el nombre del libro, la subcarpeta se llama "Desconocido").

Lo que le falta a calibre en este caso es una forma de convertir solo una página o un rango de páginas; actualmente solo puede convertir archivos PDF completos a texto.

Relacionado con PDF:Cómo crear formularios PDF rellenables con LibreOffice Writer

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

pdftotext es una utilidad de línea de comandos que convierte archivos PDF en texto sin formato. Ofrece muchas opciones, incluida la capacidad de especificar el rango de páginas para convertir, preservar lo mejor posible el diseño físico original del texto, establecer finales de línea (Unix, DOS o Mac) e incluso trabajar con archivos PDF protegidos con contraseña.

pdftotext es parte del paquete poppler / poppler-utils / poppler-tools (dependiendo de la distribución de Linux utilizada). Instale este paquete de la siguiente manera:

  • Debian, Ubuntu, Linux Mint y otras distribuciones de Linux basadas en Debian/Ubuntu:
sudo apt install poppler-utils

  • Fedora:
sudo dnf install poppler-utils

  • abrir SUSE:
sudo zypper install poppler-tools

  • Arco Linux:
sudo pacman -S poppler

En otras distribuciones de Linux, use su administrador de paquetes para instalar el paquete poppler / poppler-utils.

Ahora que el paquete está instalado, puede Convertir un archivo PDF a texto sin formato y mantener su diseño igual (Recomiendo usar este -layout Opción para mantener el diseño físico original, pero puede probar sin él) con:

pdftotext -layout input.pdf output.txt

Tienes que reemplazar input.pdf con el nombre del archivo PDF y output.txt con el nombre con el que se llamará al archivo TXT generado. Si es necesario, agregue las rutas delante de los nombres de los archivos (por ejemplo, ~/Documents/mypdf.pdf ). Si no se especifica ningún archivo de texto de salida, pdftotext nombra el archivo con el mismo nombre que el archivo PDF original.

La opción de diseño conserva el diseño del PDF cuando se convierte a texto, incluso en casos de PDF de varias columnas.

¿Qué sucede si solo desea convertir un rango de páginas del PDF a texto en lugar del PDF completo? Usa -f (primera página a convertir) y -l (última página para convertir) seguido del número de página, de la siguiente manera:

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

Sustituye M y N con el primer y último número de página a extraer y input.pdf con el nombre del archivo PDF.

¿Le gustaría utilizar caracteres de final de línea para Mac, DOS o Unix? Puedes hacer esto con también. indicar -eol seguido de mac , dos o unix . P.ej. para terminaciones de línea Unix:

pdftotext -layout -eol unix input.pdf

Si no desea insertar saltos de página entre páginas, agregue un -nopgbrk :

pdftotext -layout nopgbrk input.pdf

¿Desea convertir por lotes todos los archivos PDF de una carpeta en archivos de texto? pdftotext no admite la conversión por lotes de PDF a texto (y pdftotext *.pdf no funciona), pero puede convertir todos los archivos PDF de una carpeta en archivos de texto mediante un bucle Bash FOR:

for file in *.pdf; do pdftotext -layout "$file"; done

Para más opciones, ejecute man pdftotext y pdftotext --help .

Es posible que le guste esto:descargue Master PDF Editor 4 para Linux (versión gratuita)


Debian
  1. Cómo borrar el historial de línea de comandos BASH en Linux

  2. Cómo convertir múltiples imágenes a PDF en Ubuntu Linux

  3. Cómo apagar o reiniciar Linux usando la línea de comandos

  4. Cómo reiniciar Linux usando la línea de comandos

  5. ¿Cómo convertir un PDF a JPG con línea de comando en Linux?

Cómo hacer matemáticas básicas en la línea de comandos de Linux

Cómo convertir documentos a formato PDF en la línea de comandos de Ubuntu

Cómo convertir una página web a PDF en Linux

Cómo convertir PDF a imagen en la línea de comandos de Linux

Cómo encontrar la dirección IP en la línea de comandos de Linux

Cómo convertir PDF a imagen en el sistema Linux (método CLI y GUI)