1. Productos
  2.   PDF
  3.   PHP
  4.   PDF a Texto
 
  

API PHP gratuita para convertir PDF o parte específica a texto

Biblioteca PHP de código abierto que permite a los desarrolladores de software extraer texto de PDFs o de una página específica de un archivo PDF dentro de aplicaciones PHP.

¿Qué es PDF a Texto?

Los PDFs son un formato estándar para documentos digitales en todas las industrias, desde finanzas y salud hasta educación y legal. Sin embargo, extraer contenido de texto significativo de los PDFs puede ser un desafío para los desarrolladores de software. Afortunadamente, la biblioteca PDF-to-Text de Spatie hace que esta tarea sea simple y eficiente para los desarrolladores PHP. Esta herramienta de código abierto proporciona un contenedor limpio y liviano alrededor del potente binario pdftotext del paquete poppler-utils. La biblioteca tiene una interfaz intuitiva que permite a los desarrolladores extraer texto con solo unas pocas líneas de código. Soporta documentos multipágina, PDFs con columnas, fuentes e imágenes incrustadas, PDFs preprocesados (si OCR ya se ha aplicado) y mucho más.

Spatie PDF-to-Text es una biblioteca PHP de código abierto que permite a los desarrolladores de software extraer texto plano de archivos PDF. Actúa como un contenedor PHP alrededor de la utilidad de línea de comandos pdftotext, parte del conjunto Poppler. Esto significa que no depende de bibliotecas PHP para analizar el PDF, sino que aprovecha una herramienta binaria madura y probada en batalla que funciona rápido y con alta precisión. Aunque la biblioteca está escrita en PHP, funciona sin problemas en diferentes sistemas operativos (Linux, macOS y Windows) siempre que el binario pdftotext esté disponible. Es ligera y no incorpora bibliotecas de terceros innecesarias. Esto la hace más rápida, más fácil de mantener y menos propensa a romperse debido a actualizaciones en dependencias no relacionadas.

Previous Next

Comenzando con PDF a Texto

Para ejecutar PDF-to-Text primero necesitas instalar PHP versión 5.3 o superior. La forma más fácil de instalar PDF-to-Text es a través de Composer. Por favor, usa el siguiente comando para una instalación sin problemas.

Instalar PDF a Texto vía composer

composer require spatie/pdf-to-text

Instalar PDF a Texto mediante comando Git

git clone https://github.com/spatie/pdf-to-text.git 
cd dompdf/lib

Extraer texto de un archivo PDF usando la API de PHP

La biblioteca de código abierto Spatie PDF-to-Text es minimalista por diseño, enfocándose en hacer un solo trabajo—extraer texto de PDFs—y hacerlo bien. Su simplicidad la convierte en una opción excelente para soluciones de software a medida, como escáneres de facturas, herramientas de investigación académica, procesadores de documentos legales o sistemas de migración de contenido. El siguiente ejemplo demuestra cómo los desarrolladores pueden simplemente establecer la ruta del archivo PDF y están listos para extraer todo su contenido de texto. También pueden personalizar la ruta al binario si es necesario.

¿Cómo extraer texto de un archivo PDF usando la API de PHP?

use Spatie\PdfToText\Pdf;
$text = (new Pdf())
    ->setPdf('example.pdf')
    ->text();

echo $text;
$text = (new Pdf('/custom/path/to/pdftotext'))
    ->setPdf('report.pdf')
    ->text();

Extraer una parte específica del PDF mediante PHP

La biblioteca le permite aprovechar el poder de la herramienta de línea de comandos pdftotext al proporcionar soporte para sus diversas opciones. Esto significa que puede personalizar el proceso de extracción de texto para adaptarlo a sus necesidades específicas. Por ejemplo, puede usar opciones para mantener el diseño del PDF original, especificar un rango de páginas concreto o establecer la resolución de la salida. El siguiente ejemplo sencillo muestra cómo los desarrolladores primero establecen las opciones layout y r y luego añaden la opción f para especificar la primera página del PDF.

¿Cómo configurar varias opciones para extraer texto de PDF mediante la API de PHP?

use Spatie\PdfToText\Pdf;

$text = (new Pdf())
    ->setPdf('table.pdf')
    ->setOptions(['layout', 'r 96'])
    ->addOptions(['f 1'])
    ->text();

echo $text;
 Español