Rozplątaj w dokumencie programu Word
W tym artykule omówimy powyższy kod źródłowy C#, aby zrozumieć, jak używać funkcji Untangle w bibliotece Aspose.Words dla .NET. Ta funkcja odkrywa zagnieżdżone zakładki, które znajdują się w sąsiednich wierszach tabeli.
Warunki wstępne
- Podstawowa znajomość języka C#.
- Środowisko programistyczne .NET z zainstalowaną biblioteką Aspose.Words.
Krok 1: Przeglądaj zakładki dokumentów
Używamy pętli foreach do przeglądania wszystkich zakładek znajdujących się w dokumencie:
foreach(Bookmark bookmark in doc.Range.Bookmarks)
{
// Kod do obsługi zakładek tutaj
}
Krok 2: Pobierz wiersze nadrzędne z zakładek
UżywamyGetAncestor
metody pobierania wierszy nadrzędnych węzłów początkowego i końcowego zakładki:
Row row1 = (Row)bookmark.BookmarkStart.GetAncestor(typeof(Row));
Row row2 = (Row)bookmark.BookmarkEnd.GetAncestor(typeof(Row));
Krok 3: Rozplątaj zagnieżdżone zakładki
Jeśli zostaną znalezione obie linie nadrzędne, a zakładka zaczyna się i kończy na sąsiednich liniach, węzeł końcowy zakładki przesuwamy na koniec ostatniego akapitu ostatniej komórki w górnym wierszu:
if (row1 != null && row2 != null && row1.NextSibling == row2)
row1.LastCell.LastParagraph.AppendChild(bookmark.BookmarkEnd);
Przykładowy kod źródłowy dla Untangle przy użyciu Aspose.Words dla .NET
Oto pełny przykład kodu źródłowego rozplątywania zagnieżdżonych zakładek przy użyciu Aspose.Words dla .NET:
foreach (Bookmark bookmark in doc.Range.Bookmarks)
{
// Pobierz wiersz nadrzędny zarówno zakładki, jak i węzła końcowego zakładki.
Row row1 = (Row) bookmark.BookmarkStart.GetAncestor(typeof(Row));
Row row2 = (Row) bookmark.BookmarkEnd.GetAncestor(typeof(Row));
// Jeśli oba wiersze zostaną znalezione prawidłowo, a początek i koniec zakładki znajdują się w sąsiednich wierszach,
// przesuń węzeł końcowy zakładki na koniec ostatniego akapitu w ostatniej komórce górnego wiersza.
if (row1 != null && row2 != null && row1.NextSibling == row2)
row1.LastCell.LastParagraph.AppendChild(bookmark.BookmarkEnd);
}
Wniosek
W tym artykule zbadaliśmy kod źródłowy C#, aby zrozumieć, jak używać funkcji Untangle w Aspose.Words dla .NET. Postępowaliśmy zgodnie z przewodnikiem krok po kroku, jak rozplątać zagnieżdżone zakładki w sąsiednich wierszach tabeli.
Często zadawane pytania
P: Czy funkcja Rozwikłanie działa tylko z zakładkami zagnieżdżonymi w sąsiednich wierszach tabeli?
O: Tak, funkcja Rozplątania została zaprojektowana specjalnie do rozplątywania zagnieżdżonych zakładek znajdujących się w sąsiednich wierszach tabeli. Jeżeli zakładki nie znajdują się w sąsiednich wierszach, funkcja ta nie będzie miała zastosowania.
P: Jak mogę zidentyfikować zagnieżdżone zakładki w dokumencie programu Word?
O: Możesz zidentyfikować zagnieżdżone zakładki, przeglądając zakładki w dokumencie i sprawdzając, czy zakładka początkowa i zakładka końcowa znajdują się w sąsiadujących wierszach tabeli. Możesz użyć kodu źródłowego podanego w tym artykule jako punktu wyjścia do wdrożenia tej funkcji.
P: Czy funkcja Unscramble modyfikuje zawartość oryginalnego dokumentu?
Odp.: Tak, funkcja Rozwikłanie modyfikuje oryginalny dokument, przesuwając węzeł końcowy zakładki na koniec ostatniego akapitu ostatniej komórki w górnym wierszu. Przed zastosowaniem tej funkcji pamiętaj o zapisaniu kopii zapasowej dokumentu.
P: Jak rozplątać zagnieżdżone zakładki w innych typach elementów dokumentu, takich jak sekcje lub akapity?
O: Funkcja Rozplątania przedstawiona w tym artykule została specjalnie zaprojektowana do rozplątywania zagnieżdżonych zakładek w sąsiednich wierszach tabeli. Jeśli chcesz rozplątać zagnieżdżone zakładki w innych elementach dokumentu, będziesz musiał odpowiednio dostosować kod i zastosować odpowiednie metody, aby uzyskać dostęp do żądanych elementów.
P: Czy istnieją inne metody rozplątywania zagnieżdżonych zakładek w dokumencie programu Word przy użyciu Aspose.Words dla .NET?
Odp.: Metoda przedstawiona w tym artykule jest popularną metodą rozplątywania zagnieżdżonych zakładek w sąsiednich wierszach tabeli. Mogą jednak istnieć inne podejścia lub techniki, w zależności od konkretnych potrzeb Twojego projektu. Możesz sprawdzićAspose.Words dla referencji .NET API aby dokładniej poznać dostępne funkcje.