Come posso estrarre il testo da file PDF o Word (rimuovi in grassetto, immagini e altri supporti di formattazione rich text) in C#?Estrai testo da file pdf e word
risposta
È possibile utilizzare i filtri progettati per/utilizzati dal servizio di indicizzazione. Sono progettati per estrarre il testo normale da vari documenti, che è utile per la ricerca all'interno di un documento. Puoi usarlo per file Office, PDF, HTML e così via, praticamente qualsiasi tipo di file che ha un filtro. L'unico svantaggio è che devi installare questi filtri sul server, quindi se non hai accesso diretto al server questo potrebbe non essere possibile. Alcuni filtri sono preinstallati con Windows, ma alcuni, come PDF, devi installarti. Per un'implementazione C# consulta questo articolo: Using IFilter in C#
Per PDF Hai preso uno sguardo al TallPDF
Controllare anche questo: http://www.codeproject.com/KB/files/PDF_to_TEXT.aspx
modello a oggetti Utilizzare Word, è l'unico modo affidabile dal formato Word non è aperto e variano da versione a versione.
Ma come? Questa è una risposta inutile senza un esempio di codice. – KyleM
PDF:
Sono disponibili varie opzioni.
pdftotext:
Scaricare il XPDF utilities. Nel file .zip ci sono varie utility a riga di comando. Uno è pdftotext(.exe)
. Può estrarre tutto il contenuto del testo da un file PDF funzionante. Digitare pdftotext -help
per informazioni su alcuni se i suoi parametri della riga di comando.
Ghostscript:
Installare il latest version of Ghostscript (v.8.71). Ghostscript è un interprete PostScript e PDF. Si può usare per estrarre il testo da un PDF così: testo di output
gswin32c.exe^
-q^
-sFONTPATH=c:/windows/fonts^
-dNODISPLAY^
-dSAFER^
-dDELAYBIND^
-dWRITESYSTEMDICT^
-dSIMPLE^
-f ps2ascii.ps^
-dFirstPage=3^
-dLastPage=7^
input.pdf^
-dQUIET
Questa volontà contenuta nelle pagine 3-7 di input.pdf
a stdout. È possibile reindirizzare questo ad un file aggiungendo > /path/to/output.txt
al comando. (Controllare per assicurarsi che il programma di utilità PostScript ps2ascii.ps
è presente in lib
sottodirectory del vostro Ghostscript.)
Se si omette il parametro -dSIMPLE
, l'output di testo sarà indovinare interruzioni di linea e spaziature di parola. Per i dettagli guarda i commenti all'interno del file ps2ascii.ps
stesso. Puoi anche sostituire quel parametro con -dCOMPLEX
per ottenere ulteriori informazioni sulla formattazione del testo.
XPDF funziona meglio di qualsiasi cosa che ho trovato – chrisfs
Si potrebbe voler esaminare PDFBox. Ecco un link a una pagina del progetto del codice che mostra come usarlo in C# così come altri commenti utili.
http://www.codeproject.com/KB/string/pdf2text.aspx
Per quanto riguarda Word il suggerimento di utilizzare il modello di oggetti di Word è probabilmente la più accurata.
Docotic.Pdf library può essere utilizzato per estrarre il testo da file PDF.
La libreria può extract plain text and text with formatting. Inoltre, è possibile recuperare un collection of words o caratteri con rettangoli di delimitazione utilizzando l'API della libreria.
Disclaimer: Lavoro per il venditore della biblioteca.
Questo è esattamente ciò di cui avevo bisogno. Grazie! –