Jak edytować DOCX i konwertować formaty przy użyciu GroupDocs.Editor

Bezproblemowo zarządzaj i przekształcaj dokumenty Word w swoim środowisku .NET przy użyciu GroupDocs.Editor .NET. W tym samouczku odkryjesz jak edytować docx pliki, konwertować je do formatów takich jak RTF, DOCM i zwykły tekst oraz zautomatyzować przepływ pracy dokumentów dla maksymalnej wydajności.

Szybkie odpowiedzi

  • Jakiej biblioteki wymaga? GroupDocs.Editor for .NET (20.10+).
  • Czy mogę konwertować DOCX do RTF? Tak – użyj WordProcessingSaveOptions z WordProcessingFormats.Rtf.
  • Czy zapisywanie jako TXT jest obsługiwane? Absolutnie, za pomocą TextSaveOptions.
  • Czy potrzebuję licencji? Wersja próbna działa w środowisku deweloperskim; licencja odblokowuje wszystkie funkcje.
  • Jak obsłużyć wiele plików? Połącz kod z async/await lub Parallel.ForEach dla przetwarzania wsadowego.

Czym jest „jak edytować docx” przy użyciu GroupDocs.Editor?

GroupDocs.Editor ładuje plik DOCX, udostępnia jego zawartość jako edytowalny HTML, pozwala programowo modyfikować ten HTML, a następnie zapisuje wynik w dowolnym obsługiwanym formacie. Takie podejście eliminuje potrzebę używania interfejsu Office i działa na każdej platformie .NET po stronie serwera.

Dlaczego warto używać GroupDocs.Editor do automatyzacji przepływu pracy dokumentów?

  • Tylko po stronie serwera – nie wymaga instalacji Office.
  • Wiele formatów wyjściowych – RTF, DOCM, TXT, HTML, PDF itd.
  • Wysoka wydajność – lekki API zaprojektowany do scenariuszy wsadowych.
  • Pełna kontrola – edytuj, zamieniaj lub wstrzykuj fragmenty HTML przed zapisem.

Wymagania wstępne

  • GroupDocs.Editor biblioteka (Version 20.10 or later)
  • .NET Framework 4.7.2 + or .NET 5/6
  • Visual Studio (dowolna nowsza edycja)
  • Podstawowa znajomość C# oraz obeznanie z operacjami I/O na plikach

Instalacja GroupDocs.Editor

Możesz dodać pakiet za pomocą .NET CLI, konsoli Package Manager Console lub interfejsu NuGet UI.

dotnet add package GroupDocs.Editor
Install-Package GroupDocs.Editor

Uzyskanie licencji

Rozpocznij od wersji próbnej lub poproś o tymczasowy klucz licencyjny. W zastosowaniach produkcyjnych zakup licencję, aby odblokować nieograniczone przetwarzanie.

Jak załadować i edytować dokument DOCX

Najpierw wskaż edytor na plik źródłowy, następnie pobierz edytowalny HTML, wprowadź potrzebne zmiany i na koniec utwórz nowy EditableDocument z zmodyfikowanego kodu.

using (Editor editor = new Editor("YOUR_DOCUMENT_DIRECTORY/sample.docx", new Options.WordProcessingLoadOptions()))
{
    // Your document manipulation code here
}

Przewodnik po kodzie krok po kroku

  1. Zdefiniuj ścieżkę pliku wejściowego

string inputFilePath = “YOUR_DOCUMENT_DIRECTORY/sample.docx”;


2. **Utwórz instancję `Editor`**  

   ```csharp
using GroupDocs.Editor;
using GroupDocs.Editor.Options;

Editor editor = new Editor(inputFilePath, new Options.WordProcessingLoadOptions());
  1. Edytuj HTML dokumentu

EditableDocument defaultWordProcessingDoc = editor.Edit(); string allEmbeddedInsideString = defaultWordProcessingDoc.GetEmbeddedHtml(); string allEmbeddedInsideStringEdited = allEmbeddedInsideString.Replace(“Subtitle”, “Edited subtitle”);


4. **Utwórz nowy `EditableDocument` z edytowanego HTML**  

   ```csharp
EditableDocument editedDoc = EditableDocument.FromMarkup(allEmbeddedInsideStringEdited, null);
  1. Zwolnij tymczasowe obiekty

editedDoc.Dispose(); defaultWordProcessingDoc.Dispose(); editor.Dispose();


## Jak konwertować Word do RTF
Zapisanie edytowanego dokumentu jako RTF jest proste przy użyciu odpowiednich opcji zapisu.

```csharp
string outputRtfPath = Path.Combine("YOUR_OUTPUT_DIRECTORY", "editedDoc.rtf");
WordProcessingSaveOptions rtfSaveOptions = new WordProcessingSaveOptions(WordProcessingFormats.Rtf);
using (Editor editor = new Editor(inputFilePath, new Options.WordProcessingLoadOptions()))
{
    editor.Save(editedDoc, outputRtfPath, rtfSaveOptions);
}
editor.Dispose();

Jak zapisać DOCX jako DOCM przy użyciu strumienia

Gdy potrzebny jest format DOCM z obsługą makr, możesz zapisać bezpośrednio do FileStream.

string outputDocmPath = Path.Combine("YOUR_OUTPUT_DIRECTORY", "editedDoc.docm");
WordProcessingSaveOptions docmSaveOptions = new WordProcessingSaveOptions(WordProcessingFormats.Docm);
using (Editor editor = new Editor(inputFilePath, new Options.WordProcessingLoadOptions()))
{
    using (FileStream outputStream = File.Create(outputDocmPath))
    {
        editor.Save(editedDoc, outputStream, docmSaveOptions);
    }
}
editor.Dispose();

Jak konwertować DOCX do TXT (czysty tekst)

Ekstrakcja czystego tekstu jest przydatna do indeksowania, wyszukiwania lub powiadomień e‑mail.

string outputTxtPath = Path.Combine("YOUR_OUTPUT_DIRECTORY", "editedDoc.txt");
TextSaveOptions textSaveOptions = new TextSaveOptions()
{
    Encoding = Encoding.UTF8,
    PreserveTableLayout = true
};
using (Editor editor = new Editor(inputFilePath, new Options.WordProcessingLoadOptions()))
{
    editor.Save(editedDoc, outputTxtPath, textSaveOptions);
}
editor.Dispose();

Typowe przypadki użycia i scenariusze rzeczywiste

  • Automatyczne generowanie raportów: Konwertuj analityczne raporty Word do TXT w celu dystrybucji e‑mail.
  • Platformy współdzielonej edycji: Pozwól użytkownikom edytować fragmenty HTML i przechowywać wynik jako DOCM lub RTF.
  • Archiwizacja dokumentów: Migruj starsze pliki DOCX do DOCM w celu obsługi makr, zachowując zawartość.
  • Usługi internetowe: Strumieniuj konwersje DOCX → PDF/RTF w locie bez plików tymczasowych.

Wskazówki dotyczące wydajności przy wsadowym przetwarzaniu dokumentów Word

  • Zwalniaj od razu: Zawsze wywołuj Dispose() na obiektach Editor i dokumentu.
  • Ładuj mądrze: Wybierz najbardziej specyficzne LoadOptions, aby uniknąć niepotrzebnego parsowania.
  • Równolegle przetwarzaj bezpiecznie: Użyj Parallel.ForEach z oddzielnymi instancjami Editor dla każdego wątku.
  • Unikaj dużych łańcuchów w pamięci: Przy przetwarzaniu ogromnych dokumentów pracuj ze strumieniami zamiast pełnych łańcuchów HTML.

Najczęściej zadawane pytania

Q: Czy mogę edytować chroniony hasłem DOCX?
A: Tak. Podaj hasło poprzez WordProcessingLoadOptions.Password przy tworzeniu Editor.

Q: Czy można konwertować wiele plików w jednym uruchomieniu?
A: Absolutnie. Owiń logikę pojedynczego pliku w pętli lub użyj Parallel.ForEach do równoległego przetwarzania.

Q: Czy GroupDocs.Editor obsługuje .NET Core?
A: Biblioteka działa z .NET 5, .NET 6 oraz .NET Core 3.1, jak również z pełnym .NET Framework.

Q: Co się dzieje z makrami przy zapisie jako DOCM?
A: Makra są zachowywane przy użyciu formatu zapisu Docm; są usuwane przy RTF/TXT.

Q: Jak rozwiązać problem „OutOfMemoryException” podczas dużych zadań wsadowych?
A: Przetwarzaj pliki w mniejszych partiach, natychmiast zwalniaj obiekty i rozważ zwiększenie limitu pamięci aplikacji.

Zakończenie

Masz teraz kompletny, gotowy do produkcji przepływ pracy dla jak edytować docx plików i konwertować je do RTF, DOCM lub czystego tekstu przy użyciu GroupDocs.Editor .NET. Postępując zgodnie z powyższymi krokami, możesz automatyzować przepływy pracy dokumentów, obsługiwać przetwarzanie wsadowe i integrować płynną konwersję formatów w dowolnej aplikacji .NET.


Ostatnia aktualizacja: 2026-04-07
Testowano z: GroupDocs.Editor 20.10 (latest at time of writing)
Autor: GroupDocs