Dodawanie zakładek za pomocą ExtractTextFromPage

This article was translated from English: Does it need improvement?
Translated
View the article in English

Gdy dodajesz zakładki oparte na treści tekstowej, wyszukiwanie z właściwością Pages.Lines może się nie powieść, ponieważ zwracany tekst wraca złożony lub nieuporządkowany, więc wyszukiwanie w oparciu o tytuł nigdy nie zadziała. Wyciągnięcie tekstu strony za pomocą ExtractTextFromPage() odczytuje każdą stronę w logicznej kolejności i daje niezawodny ciąg do wyszukiwania.

Zwróć uwagęW wersji 2026.5.x i nowszych użyj klasy LinkAnnotation zamiast. Posiada wbudowane wsparcie dla klikalnych linków, które nawigują do konkretnej strony i pozycji, i jest zalecanym podejściem, gdy jest dostępne.

Pages.Lines rekonstruuje tekst z tego, jak wizualnie pojawia się na stronie. To załamuje się, gdy tekst jest rysowany w nie liniowym porządku, gdy niestandardowe czcionki lub kodowanie są w grze, lub gdy PDF został wygenerowany z HTML lub narzędzia trzeciej strony ze skomplikowanym układem. Rezultatem jest niepełny lub pomieszany tekst, którego nie można pewnie wyszukać.

Rozwiązanie

1. Odczytaj każdą stronę za pomocą ExtractTextFromPage()

Pobierz surowy osadzony tekst z każdej strony zamiast wizualnej rekonstrukcji. ExtractTextFromPage() zwraca zawartość strony w logicznej kolejności czytania, co czyni wyszukiwanie w nagłówkowym bardziej niezawodnym w różnych strukturach PDF.

2. Przeprowadzaj pętlę po każdej stronie i oznaczaj zakładką każdy unikalny nagłówek

Przejdź przez wszystkie strony, aby nie pominąć żadnej sekcji bez względu na to, gdzie się znajduje, i śledź, które nagłówki już widziałeś, aby każdy był oznakowowany tylko raz. HashSet to czysty sposób na usunięcie duplikatów: podając dokument z sekcje zatytułowane "ARTICLE 1", "ARTICLE 2", i tak dalej, gwarantuje pojedynczą zakładkę na artykuł.

Wyjściem jest zestaw zakładek wskazujących na każdy określony nagłówek, nawet gdy PDF pochodzi z dynamicznego źródła HTML lub zawiera skomplikowane formatowanie.

Kod C# dodający zakładki PDF na nagłówki artykułów za pomocą ExtractTextFromPage i HashSet

Curtis Chau
Autor tekstów technicznych

Curtis Chau posiada tytuł licencjata z informatyki (Uniwersytet Carleton) i specjalizuje się w front-endowym rozwoju, z ekspertką w Node.js, TypeScript, JavaScript i React. Pasjonuje się tworzeniem intuicyjnych i estetycznie przyjemnych interfejsów użytkownika, Curtis cieszy się pracą z nowoczesnymi frameworkami i tworzeniem dobrze zorganizowanych, atrakcyjnych wizualnie podrę...

Czytaj więcej
Gotowy, aby rozpocząć?
Nuget Pliki do pobrania 20,296,129 | Wersja: 2026.7 właśnie wydany
Still Scrolling Icon

Wciąż przewijasz?

Czy chcesz szybko dowodu? PM > Install-Package IronPdf
Uruchom przykład i zobacz, jak Twój kod HTML zamienia się w plik PDF.