Wyodrębnij akapity z pliku PDF
Ten samouczek poprowadzi Cię przez proces wyodrębniania akapitów z pliku PDF przy użyciu Aspose.PDF dla .NET. Dostarczony kod źródłowy języka C# demonstruje niezbędne kroki.
Wymagania
Zanim zaczniesz, upewnij się, że masz następujące elementy:
- Visual Studio lub dowolny inny kompilator C# zainstalowany na twoim komputerze.
- Aspose.PDF dla biblioteki .NET. Możesz pobrać go z oficjalnej strony Aspose lub użyć menedżera pakietów, takiego jak NuGet, aby go zainstalować.
Krok 1: Skonfiguruj projekt
- Utwórz nowy projekt C# w preferowanym środowisku programistycznym.
- Dodaj odwołanie do biblioteki Aspose.PDF dla .NET.
Krok 2: Zaimportuj wymagane przestrzenie nazw
W pliku kodu, z którego chcesz wyodrębnić akapity, dodaj następujące dyrektywy using na górze pliku:
using Aspose.Pdf;
using System;
using System.Text;
Krok 3: Ustaw katalog dokumentów
W kodzie znajdź wiersz, który mówistring dataDir = "YOUR DOCUMENT DIRECTORY";
i wymienić"YOUR DOCUMENT DIRECTORY"
ze ścieżką do katalogu, w którym przechowywane są Twoje dokumenty.
Krok 4: Otwórz dokument PDF
Otwórz istniejący dokument PDF za pomocąDocument
konstruktora i przekazując ścieżkę do wejściowego pliku PDF.
Document doc = new Document(dataDir + "input.pdf");
Krok 5: Wyodrębnij akapity
Utwórz instancjęParagraphAbsorber
klasę i użyj jejVisit
metoda wyodrębniania akapitów z dokumentu.
ParagraphAbsorber absorb = new ParagraphAbsorber();
absorb.Visit(doc);
Krok 6: Iteruj po akapitach
Przejdź w pętli wyodrębnione akapity, aby uzyskać dostęp do zawartości tekstu. Użyj zagnieżdżonych pętli, aby przechodzić przez sekcje i linie w każdym akapicie.
foreach(PageMarkup markup in absorber.PageMarkups)
{
int i = 1;
foreach(MarkupSection section in markup.Sections)
{
int j = 1;
foreach(MarkupParagraph paragraph in section.Paragraphs)
{
StringBuilder paragraphText = new StringBuilder();
foreach(List<TextFragment> line in paragraph.Lines)
{
foreach(TextFragment fragment in line)
{
paragraphText.Append(fragment.Text);
}
paragraphText. Append("\r\n");
}
paragraphText. Append("\r\n");
Console.WriteLine("Paragraph {0} of section {1} on page {2}:", j, i, markup.Number);
Console.WriteLine(paragraphText.ToString());
j++;
}
i++;
}
}
Przykładowy kod źródłowy dla wyodrębnienia akapitów przy użyciu Aspose.PDF dla .NET
// Ścieżka do katalogu dokumentów.
string dataDir = "YOUR DOCUMENT DIRECTORY";
//Otwórz istniejący plik PDF
Document doc = new Document(dataDir + "input.pdf");
// Utwórz instancję ParagraphAbsorber
ParagraphAbsorber absorber = new ParagraphAbsorber();
absorber.Visit(doc);
foreach (PageMarkup markup in absorber.PageMarkups)
{
int i = 1;
foreach (MarkupSection section in markup.Sections)
{
int j = 1;
foreach (MarkupParagraph paragraph in section.Paragraphs)
{
StringBuilder paragraphText = new StringBuilder();
foreach (List<TextFragment> line in paragraph.Lines)
{
foreach (TextFragment fragment in line)
{
paragraphText.Append(fragment.Text);
}
paragraphText.Append("\r\n");
}
paragraphText.Append("\r\n");
Console.WriteLine("Paragraph {0} of section {1} on page {2}:", j, i, markup.Number);
Console.WriteLine(paragraphText.ToString());
j++;
}
i++;
}
}
Wniosek
Pomyślnie wyodrębniłeś akapity z dokumentu PDF przy użyciu Aspose.PDF dla .NET. Wyodrębnione akapity zostały wyświetlone w oknie konsoli.
Często zadawane pytania
P: Jaki jest cel tego samouczka?
Odp.: Ten samouczek ma na celu poprowadzić Cię przez proces wyodrębniania akapitów z pliku PDF przy użyciu Aspose.PDF dla .NET. Towarzyszący kod źródłowy języka C# zawiera praktyczne kroki umożliwiające osiągnięcie tego zadania.
P: Jakie przestrzenie nazw powinienem zaimportować?
O: W pliku kodu, z którego chcesz wyodrębnić akapity, umieść na początku pliku następujące dyrektywy using:
using Aspose.Pdf;
using System;
using System.Text;
P: Jak określić katalog dokumentów?
O: Znajdź linięstring dataDir = "YOUR DOCUMENT DIRECTORY";
w kodzie i zamień"YOUR DOCUMENT DIRECTORY"
z rzeczywistą ścieżką do katalogu dokumentów.
P: Jak otworzyć istniejący dokument PDF?
Odp.: W kroku 4 otworzysz istniejący dokument PDF za pomocąDocument
konstruktora i podając ścieżkę do wejściowego pliku PDF.
P: Jak wyodrębnić akapity z dokumentu?
O: Krok 5 polega na utworzeniu instancji plikuParagraphAbsorber
klasę i używanie jejVisit
metoda wyodrębniania akapitów z dokumentu PDF.
P: Jak iterować po wyodrębnionych akapitach?
O: Krok 6 poprowadzi Cię przez przeglądanie wyodrębnionych akapitów. Zagnieżdżone pętle służą do przechodzenia przez sekcje i linie każdego akapitu, ostatecznie uzyskując dostęp i wyświetlając zawartość tekstu.
P: Jaki jest najważniejszy wniosek z tego samouczka?
Odp.: Wykonując ten samouczek, nauczyłeś się wyodrębniać akapity z dokumentu PDF przy użyciu Aspose.PDF dla .NET. Wyodrębnione akapity zostały wyświetlone w oknie konsoli, zapewniając cenny wgląd w strukturę treści dokumentu.