在 .NET 中使用 iTextSharp 提取 PDF 內容
在 .NET 應用程式中,iTextSharp 提供了處理 PDF 文件的強大功能。其主要功能之一是能夠從 PDF 中提取內容,包括文字和圖像。
從PDF 中讀取純文字
從PDF 中讀取純文字使用iTextSharp,您可以利用以下程式碼:
using iTextSharp.text.pdf; using iTextSharp.text.pdf.parser; using System.IO; public string ReadPdfText(string fileName) { StringBuilder text = new StringBuilder(); if (File.Exists(fileName)) { PdfReader pdfReader = new PdfReader(fileName); for (int page = 1; page <= pdfReader.NumberOfPages; page++) { ITextExtractionStrategy strategy = new SimpleTextExtractionStrategy(); string currentText = PdfTextExtractor.GetTextFromPage(pdfReader, page, strategy); text.Append(currentText); } pdfReader.Close(); } return text.ToString(); }
在此範例中,ReadPdfText 方法讀取PDF 檔案並將文字累積到StringBuilder 物件中。 SimpleTextExtractionStrategy 用於從 PDF 的每一頁中提取文字。
處理 PDF 中的圖像
雖然上面的程式碼專注於提取文本,但 iTextSharp 還使您能夠從 PDF 中提取圖像。您可以使用以下方法:
using iTextSharp.text.pdf; using iTextSharp.text.pdf.parser; using System; using System.Drawing; using System.IO; public void ReadPdfImages(string fileName) { if (File.Exists(fileName)) { PdfReader pdfReader = new PdfReader(fileName); for (int page = 1; page <= pdfReader.NumberOfPages; page++) { PdfReaderContentParser parser = new PdfReaderContentParser(pdfReader); string content = parser.ProcessContent(page, new ImageRenderListener()); } } }
在此程式碼中,使用 PdfReaderContentParser 來解析每個頁面的內容。 ImageRenderListener 提供了處理影像渲染的回呼方法。每個影像都渲染為 Bitmap 對象,可以進一步處理或保存。
以上是如何在 .NET 中使用 iTextSharp 從 PDF 中提取文字和圖像?的詳細內容。更多資訊請關注PHP中文網其他相關文章!