Saltar al contenido

Extraiga texto de un archivo pdf usando javascript

Tenemos el resultado a este disgusto, al menos eso esperamos. Si continuas con preguntas dínoslo, que sin dudarlo te ayudaremos

Solución:

aquí hay un buen ejemplo de cómo usar pdf.js para extraer el texto: http://git.macropus.org/2011/11/pdftotext/example/

por supuesto, debe eliminar una gran cantidad de código para su propósito, pero debería hacerlo

Hice un enfoque más fácil que no necesita publicar mensajes entre iframes usando la misma biblioteca (usando la última versión), usando pdf.js.

El siguiente ejemplo extraería todo el texto solo de la primera página del PDF:

/**
 * Retrieves the text of a specif page within a PDF Document obtained through pdf.js 
 * 
 * @param Integer pageNum Specifies the number of the page 
 * @param PDFDocument PDFDocumentInstance The PDF document obtained 
 **/
function getPageText(pageNum, PDFDocumentInstance) 
    // Return a Promise that is solved once the text of the page is retrieven
    return new Promise(function (resolve, reject) 
        PDFDocumentInstance.getPage(pageNum).then(function (pdfPage) 
            // The main trick to obtain the text of the PDF page, use the getTextContent method
            pdfPage.getTextContent().then(function (textContent) 
                var textItems = textContent.items;
                var finalString = "";

                // Concatenate the string of the item to the final string
                for (var i = 0; i < textItems.length; i++) 
                    var item = textItems[i];

                    finalString += item.str + " ";
                

                // Solve promise with the text retrieven from the page
                resolve(finalString);
            );
        );
    );


/**
 * Extract the test from the PDF
 */

var PDF_URL  = '/path/to/example.pdf';
PDFJS.getDocument(PDF_URL).then(function (PDFDocumentInstance) 

    var totalPages = PDFDocumentInstance.pdfInfo.numPages;
    var pageNumber = 1;

    // Extract the text
    getPageText(pageNumber , PDFDocumentInstance).then(function(textPage)
        // Show the text of the page in the console
        console.log(textPage);
    );

, function (reason) 
    // PDF loading error
    console.error(reason);
);

Lea el artículo sobre esta solución aquí. Como mencionó @xarxziux, la biblioteca ha cambiado desde que se publicó la primera solución (ya no debería funcionar con la última versión de pdf.js). Esto debería funcionar para la mayoría de los casos.

Te mostramos reseñas y calificaciones

Eres capaz de añadir valor a nuestro contenido aportando tu experiencia en las críticas.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *