So verwenden Sie IronWord auf iOS

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

.NET MAUI (Multi-platform App UI) ermöglicht es, native Anwendungen auf Android, iOS, Windows und macOS mit einer einzigen .NET-Codebasis zu erstellen. Mit IronWord können .NET-Entwickler problemlos Microsoft Word (.docx)-Dokumente erstellen, lesen, bearbeiten und speichern — plattformübergreifend und ohne Microsoft Office.

IronWord funktioniert nahtlos auf iOS über die gemeinsame .NET MAUI-Codebasis mithilfe des standardmäßigen IronWord-NuGet-Pakets — eine plattformspezifische Version wird nicht benötigt.

Installieren Sie das IronWord-NuGet-Paket

IronWord ist als standardmäßiges plattformübergreifendes NuGet-Paket verfügbar und unterstützt alle wichtigen .NET MAUI-Ziele, einschließlich iOS.

Install-Package IronWord

Erstellen Sie ein .NET MAUI Projekt

In Visual Studio:

  1. Gehen Sie zu Datei > Neu > Projekt.
  2. Wählen Sie unter Multiplattform .NET MAUI App.
  3. Benennen Sie Ihr Projekt (z. B. IronWordMauiIOS) und klicken Sie auf Erstellen.

Fügen Sie IronWord zu Ihrem Projekt hinzu

Sie können das Paket über den NuGet-Paket-Manager oder durch Bearbeiten Ihrer .csproj-Datei hinzufügen:

<ItemGroup>
  <PackageReference Include="IronWord" Version="2025.5.0" />
</ItemGroup>
<ItemGroup>
  <PackageReference Include="IronWord" Version="2025.5.0" />
</ItemGroup>
XML

Sie benötigen keine Plattformbedingungen — IronWord funktioniert automatisch über alle Ziele.

Erstellen Sie die App-Oberfläche in XAML

Fügen Sie eine einfache UI zum Laden, Bearbeiten und Speichern von Word-Dokumenten hinzu. Um dies zu tun, fügen Sie diesen Code in den MainPage.xml Code ein:

<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
             x:Class="IronWordMauiIOS.MainPage"
             BackgroundColor="White">

    <VerticalStackLayout Padding="20"
                         Spacing="15"
                         VerticalOptions="Center">

        <!-- Header -->
        <Label Text="IronWord iOS Demo"
               FontSize="24"
               FontAttributes="Bold"
               HorizontalOptions="Center"
               TextColor="#222"/>

        <!-- Open .docx -->
        <Button Text=" Open Word Document"
                Clicked="OpenDocx"
                BackgroundColor="#007AFF"
                TextColor="White"
                CornerRadius="10"
                HeightRequest="50"/>

        <!-- Editable content -->
        <Editor x:Name="docEditor"
                Placeholder="Start editing..."
                AutoSize="TextChanges"
                HeightRequest="250"
                FontSize="16"
                TextColor="#333"
                BackgroundColor="#F9F9F9"
                CornerRadius="10"
                Margin="0,10,0,0"/>

        <!-- Save Button -->
        <Button Text=" Save as .docx"
                Clicked="SaveDocx"
                BackgroundColor="#34C759"
                TextColor="White"
                CornerRadius="10"
                HeightRequest="50"/>

        <!-- Status message -->
        <Label x:Name="statusLabel"
               FontSize="14"
               TextColor="Gray"
               HorizontalOptions="Center"/>
    </VerticalStackLayout>
</ContentPage>
<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
             x:Class="IronWordMauiIOS.MainPage"
             BackgroundColor="White">

    <VerticalStackLayout Padding="20"
                         Spacing="15"
                         VerticalOptions="Center">

        <!-- Header -->
        <Label Text="IronWord iOS Demo"
               FontSize="24"
               FontAttributes="Bold"
               HorizontalOptions="Center"
               TextColor="#222"/>

        <!-- Open .docx -->
        <Button Text=" Open Word Document"
                Clicked="OpenDocx"
                BackgroundColor="#007AFF"
                TextColor="White"
                CornerRadius="10"
                HeightRequest="50"/>

        <!-- Editable content -->
        <Editor x:Name="docEditor"
                Placeholder="Start editing..."
                AutoSize="TextChanges"
                HeightRequest="250"
                FontSize="16"
                TextColor="#333"
                BackgroundColor="#F9F9F9"
                CornerRadius="10"
                Margin="0,10,0,0"/>

        <!-- Save Button -->
        <Button Text=" Save as .docx"
                Clicked="SaveDocx"
                BackgroundColor="#34C759"
                TextColor="White"
                CornerRadius="10"
                HeightRequest="50"/>

        <!-- Status message -->
        <Label x:Name="statusLabel"
               FontSize="14"
               TextColor="Gray"
               HorizontalOptions="Center"/>
    </VerticalStackLayout>
</ContentPage>
XML

Es werden Schaltflächen und eine Editor-UI zum Laden/Speichern von Word-Inhalten erstellt.

Verwenden Sie IronWord im gemeinsamen Code

Implementieren Sie in Ihrer MainPage.xaml.cs das Lesen und Schreiben von DOCX-Dokumenten mit IronWord:

using IronWord;
using IronWord.Models;
using Microsoft.Maui.Storage;
using System.Text;

namespace IronWordMauiIOS;

public partial class MainPage : ContentPage
{
    public MainPage()
    {
        InitializeComponent();
        License.LicenseKey = "YOUR-LICENSE-KEY"; 
    }

    private async void OpenDocx(object sender, EventArgs e)
    {
        try
        {
            var file = await FilePicker.PickAsync();
            if (file == null) return;

            var path = Path.Combine(FileSystem.CacheDirectory, file.FileName);
            using (var source = await file.OpenReadAsync())
            using (var target = File.Create(path))
                await source.CopyToAsync(target);

            var doc = new WordDocument(path);
            docEditor.Text = ExtractText(doc);
            statusLabel.Text = "Document loaded successfully.";
        }
        catch (Exception ex)
        {
            statusLabel.Text = $"Error: {ex.Message}";
        }
    }

    private async void SaveDocx(object sender, EventArgs e)
    {
        try
        {
            var document = new WordDocument();
            var paragraph = new Paragraph();
            paragraph.Texts.Add(new TextContent(docEditor.Text));
            document.Paragraphs.Add(paragraph);

            var fileName = $"ExportedDoc_{DateTime.Now:yyyyMMddHHmmss}.docx";
            var path = Path.Combine(FileSystem.AppDataDirectory, fileName);
            document.SaveAs(path);

            statusLabel.Text = $"Saved to: {fileName}";
        }
        catch (Exception ex)
        {
            statusLabel.Text = $"Save error: {ex.Message}";
        }
    }

    private string ExtractText(WordDocument doc)
    {
        var sb = new StringBuilder();
        foreach (var para in doc.Paragraphs)
        {
            foreach (var element in para.Texts)
            {
                if (element is TextContent text)
                    sb.AppendLine(text.Text);
            }
        }
        return sb.ToString();
    }
}
using IronWord;
using IronWord.Models;
using Microsoft.Maui.Storage;
using System.Text;

namespace IronWordMauiIOS;

public partial class MainPage : ContentPage
{
    public MainPage()
    {
        InitializeComponent();
        License.LicenseKey = "YOUR-LICENSE-KEY"; 
    }

    private async void OpenDocx(object sender, EventArgs e)
    {
        try
        {
            var file = await FilePicker.PickAsync();
            if (file == null) return;

            var path = Path.Combine(FileSystem.CacheDirectory, file.FileName);
            using (var source = await file.OpenReadAsync())
            using (var target = File.Create(path))
                await source.CopyToAsync(target);

            var doc = new WordDocument(path);
            docEditor.Text = ExtractText(doc);
            statusLabel.Text = "Document loaded successfully.";
        }
        catch (Exception ex)
        {
            statusLabel.Text = $"Error: {ex.Message}";
        }
    }

    private async void SaveDocx(object sender, EventArgs e)
    {
        try
        {
            var document = new WordDocument();
            var paragraph = new Paragraph();
            paragraph.Texts.Add(new TextContent(docEditor.Text));
            document.Paragraphs.Add(paragraph);

            var fileName = $"ExportedDoc_{DateTime.Now:yyyyMMddHHmmss}.docx";
            var path = Path.Combine(FileSystem.AppDataDirectory, fileName);
            document.SaveAs(path);

            statusLabel.Text = $"Saved to: {fileName}";
        }
        catch (Exception ex)
        {
            statusLabel.Text = $"Save error: {ex.Message}";
        }
    }

    private string ExtractText(WordDocument doc)
    {
        var sb = new StringBuilder();
        foreach (var para in doc.Paragraphs)
        {
            foreach (var element in para.Texts)
            {
                if (element is TextContent text)
                    sb.AppendLine(text.Text);
            }
        }
        return sb.ToString();
    }
}
$vbLabelText   $csharpLabel

Projektdatei-Übersicht

Ihre Projektstruktur sollte nun Folgendes enthalten:

IronWordMauiIOS/
│
├── MainPage.xaml              ← UI-Layout
├── MainPage.xaml.cs          ← Logik für UI (Word-Dokumentaktionen)
├── IronWordMauiIOS.csproj     ← Verweist auf das IronWord-NuGet-Paket
├── Platforms/ios/             ← iOS-spezifische Konfiguration (hier sind keine Änderungen erforderlich)
└── ...

Projekt ausführen

  1. Setzen Sie das Ziel auf iOS-Simulator.
  2. Drücken Sie Ausführen.
  3. Testen Sie das Lesen und Schreiben von .docx-Dokumenten direkt auf Ihrem simulierten iOS-Gerät.

Abschließende Anmerkungen

  • Voll plattformübergreifend (iOS, Android, Windows, macOS)
  • Keine Notwendigkeit für Microsoft Office oder Interop
  • 100% C# / .NET MAUI-nativ
  • Funktioniert offline
  • Hervorragend geeignet für den Bau von Editoren, Lebenslauf-Erstellern, Dokumentenbetrachtern

Häufig gestellte Fragen

Was ist IronWord und wie kann es auf iOS verwendet werden?

IronWord ist eine leistungsstarke Bibliothek, die zur Verarbeitung von Word-Dokumenten in .NET-Anwendungen, einschließlich iOS, entwickelt wurde. Sie ermöglicht es Entwicklern, Word-Dokumente nahtlos innerhalb ihrer mobilen Apps zu erstellen, zu bearbeiten und zu konvertieren.

Wie integriere ich IronWord in mein iOS-Projekt?

Um IronWord in Ihr iOS-Projekt zu integrieren, müssen Sie die IronWord-Bibliothek zu Ihrer .NET-Lösung hinzufügen, Ihr Projekt so konfigurieren, dass es auf diese verweist, und die bereitgestellten APIs zur Verwaltung von Word-Dokumenten verwenden.

Was sind die Systemanforderungen für die Verwendung von IronWord auf iOS?

IronWord erfordert eine kompatible .NET-Umgebung in Ihrem iOS-Entwicklungssetup. Stellen Sie sicher, dass Ihre Entwicklungsumgebung aktualisiert ist und die notwendigen Frameworks für eine nahtlose Integration unterstützt.

Kann IronWord Word-Dokumente auf iOS in andere Formate konvertieren?

Ja, IronWord kann Word-Dokumente in verschiedene Formate wie PDF in Ihren iOS-Anwendungen konvertieren, was eine vielseitige Dokumentenverarbeitung und -freigabe ermöglicht.

Unterstützt IronWord die Dokumentenbearbeitung auf iOS?

Ja, IronWord unterstützt eine breite Palette von Dokumentenbearbeitungen, einschließlich Textbearbeitung, Einfügen von Bildern und Verwaltung von Dokumenteigenschaften direkt innerhalb von iOS-Anwendungen.

Ist es möglich, mit IronWord von Grund auf neue Word-Dokumente auf iOS zu erstellen?

Ja, IronWord erlaubt es Ihnen, von Grund auf neue Word-Dokumente auf iOS zu erstellen und bietet eine umfassende Suite von Tools, um Inhalte, Formatierungen und Stile programmatisch hinzuzufügen.

Wie behandelt IronWord die Sicherheit von Word-Dokumenten in iOS-Anwendungen?

IronWord enthält Funktionen zur Verwaltung der Dokumentensicherheit wie Passwortschutz und Verschlüsselung, um sicherzustellen, dass Ihre Word-Dokumente in iOS-Apps sicher bleiben.

Gibt es Beispielprojekte zur Verwendung von IronWord auf iOS?

Ja, Iron Software bietet Beispielprojekte und Dokumentation, um Entwicklern zu helfen, schnell mit IronWord auf iOS zu beginnen und verschiedene Funktionen und Anwendungsfälle zu demonstrieren.

Erfordert IronWord zusätzliche Lizenzen für die Bereitstellung auf iOS?

IronWord erfordert eine gültige Lizenz für die Bereitstellung in Produktionsumgebungen, einschließlich iOS-Anwendungen. Stellen Sie sicher, die Lizenzbedingungen zu prüfen, um die Nutzungshinweise einzuhalten.

Kye Stuart
Technischer Autor

Kye Stuart verbindet Leidenschaft für das Programmieren und Schreibfähigkeiten bei Iron Software. Nach der Ausbildung am Yoobee College in Software-Bereitstellung transformieren sie nun komplexe technische Konzepte in klares Bildungspotenzial. Kye legt Wert auf lebenslanges Lernen und stellt sich neuen technischen Herausforderungen.

Außerhalb der Arbeit ...

Weiterlesen
Bereit anzufangen?
Nuget Downloads 29,594 | Version: 2025.12 gerade veröffentlicht