Extraer Párrafo de PDF
Contents
[
Hide
]
Extraer Texto de documento PDF en forma de Párrafos
Podemos obtener texto de un documento PDF buscando un texto particular (usando “texto plano” o “expresiones regulares”) de una sola página o de todo el documento, o podemos obtener el texto completo de una sola página, rango de páginas o documento completo. Sin embargo, en algunos casos, se requiere extraer párrafos de un documento PDF o texto en forma de párrafos. Hemos implementado la funcionalidad para buscar secciones y párrafos en el texto de las páginas del documento PDF. Hemos introducido la Clase ParagraphAbsorber (como TextFragmentAbsorber y TextAbsorber), que se puede usar para extraer párrafos de documentos PDF.
Iterando a través de la colección de párrafos y obteniendo su texto
// Abrir un archivo PDF existente
$document = new Document($inputFile);
// Instanciar ParagraphAbsorber
$absorber = new ParagraphAbsorber();
$absorber->visit($document);
$responseData = "";
foreach ($absorber->getPageMarkups() as $markup) {
$i = 1;
foreach ($markup->getSections() as $section) {
$j = 1;
foreach ($section->getParagraphs() as $paragraph) {
$paragraphText = "\r\n";
foreach ($paragraph->getLines() as $line) {
foreach ($line as $fragment) {
$paragraphText = $paragraphText . $fragment->getText();
}
$paragraphText = $paragraphText . "\r\n";
}
$paragraphText = $paragraphText . "\r\n";
$responseData = $responseData . "Párrafo " . $j++ . " de la sección " . $i++ . " en la página" . ":" . markup->getNumber();
$responseData = $responseData . $paragraphText;
$j++;
}
$i++;
}
}
// Guardar el texto extraído en el archivo de salida.
file_put_contents($outputFile, $responseData);