A különböző típusú dokumentumok programozott olvasása manapság bevett gyakorlat. Ebből az útmutatóból megtudhatja, hogyan olvassa el a PDF fájlt C# nyelven az alábbi egyszerű lépéseket követve.
A PDF-fájl olvasásának lépései C#-ban
- Hozzon létre egy üres C# konzolalkalmazást a Visual Studióban
- Adjon hozzá hivatkozást a Aspose.PDF for .NET-hoz a NuGet.org webhelyről történő telepítésével
- Töltsön be egy meglévő PDF-fájlt a Dokumentumobjektumba
- A PDF-fájl olvasásához inicializálja a TextAbsorber osztályt
- Bontsa ki a PDF szöveget, és írja be a konzol kimenetére
- Iteráljon a Resources PDF-oldalon, hogy képeket találjon
- Hozzon létre FileStream objektumot talált képpel
- Mentse a képet a helyi lemezre
Az alábbi kódrészlet elmagyarázza, hogyan lehet megnyitni és olvasni PDF fájlt C# nyelven. Használatával szöveget olvashat, és képeket bonthat ki PDF-fájlból. Az API TextAbsorber osztályt kínál, amely a PDF-fájlok szövegének olvasására szolgál, és a kibontott eredményeket a Text objektumon keresztül érheti el. A képek megkeresése és helyi lemezre mentése a PDF-oldal erőforrásainak átkutatásával is lehetséges, az alábbiak szerint.
Kód a PDF-fájl olvasásához C#-ban
using System; | |
using System.IO; | |
// Add reference to Aspose.PDF for .NET API | |
// Use following namespace to read PDF file | |
using Aspose.Pdf; | |
namespace ReadPDFFiles | |
{ | |
class Program | |
{ | |
static void Main(string[] args) | |
{ | |
// Set license before reading PDF file | |
Aspose.Pdf.License AsposePDFLicense = new Aspose.Pdf.License(); | |
AsposePDFLicense.SetLicense(@"c:\asposelicense\license.lic"); | |
string inFile = @"c:\ReadPDFFileInCSharp.pdf"; | |
// Load an existing PDF file in Document object to read | |
Document pdf = new Document(inFile); | |
// 1. Read text from PDF file | |
// Initialize TextAbsorber Class to read Text from PDF file | |
Aspose.Pdf.Text.TextAbsorber textAbsorber = new Aspose.Pdf.Text.TextAbsorber(); | |
// Call Page.Accept() method to let TextAbsorber find text in PDF Pages | |
pdf.Pages.Accept(textAbsorber); | |
// Write the extracted text to Console output | |
Console.WriteLine(textAbsorber.Text); | |
// 2. Extract images from PDF file | |
int imageIndex = 1; | |
// Iterate through PDF pages | |
foreach (var pdfPage in pdf.Pages) | |
{ | |
// Check available images while reading the PDF | |
foreach (XImage image in pdfPage.Resources.Images) | |
{ | |
// Create file stream for found image | |
FileStream extractedImage = new FileStream(String.Format("Page{0}_Image{1}.jpg", pdfPage.Number, imageIndex), FileMode.Create); | |
// Save output image to the disk | |
image.Save(extractedImage, System.Drawing.Imaging.ImageFormat.Jpeg); | |
// Close stream | |
extractedImage.Close(); | |
imageIndex++; | |
} | |
// Reset image index | |
imageIndex = 1; | |
} | |
} | |
} | |
} |
Az előző témakörben megtanultad a következőt: hogyan kell feldolgozni nagy PDF fájlokat C#-ban. A fenti információk és kódpélda lehetővé teszi PDF fájlok megnyitását és olvasását C# nyelven, szövegek és képek kibontása érdekében.