任務要求:
- 提取PDF文檔中的文本
- 提取PDF文檔中的圖片
所需工具:
實現代碼:
【示例 1 】提取文本
using Spire.Pdf;
using System;
using System.IO;
using System.Text;
namespace ExtractText
{
class Program
{
static void Main(string[] args)
{
//加載文檔
PdfDocument document = new PdfDocument();
document.LoadFromFile("測試文檔.pdf");
//實例化StringBuilder類,獲取文本
StringBuilder content = new StringBuilder();
content.Append(document.Pages[0].ExtractText());
//保存提取後的文本內容到.txt文檔
String fileName = "TextFromPDF.txt";
File.WriteAllText(fileName, content.ToString());
System.Diagnostics.Process.Start("TextFromPDF.txt");
}
}
}
文本提取效果:
【示例 2 】提取圖片
using System;
using System.Collections.Generic;
using System.Text;
using System.Drawing;
using Spire.Pdf;
namespace ExtractImagesFromPDF
{
class Program
{
static void Main(string[] args)
{
//實例化PdfDocument類,並加載測試文檔
PdfDocument doc = new PdfDocument();
doc.LoadFromFile("測試文檔.pdf");
//實例化List類
List<Image> ListImage = new List<Image>();
for (int i = 0; i < doc.Pages.Count; i++)
{
// 獲取 Spire.Pdf.PdfPageBase類對象
PdfPageBase page = doc.Pages[i];
// 提取圖片
Image[] images = page.ExtractImages();
if (images != null && images.Length > 0)
{
ListImage.AddRange(images);
}
}
if (ListImage.Count > 0)
{
for (int i = 0; i < ListImage.Count; i++)
{
Image image = ListImage[i];
image.Save("image" + (i + 1).ToString() + ".png", System.Drawing.Imaging.ImageFormat.Png);
}
System.Diagnostics.Process.Start("image1.png");
}
}
}
}
圖片提取效果: