iOS'te IronWord Nasıl Kullanılır
.NET MAUI (Çok platformlu Uygulama Arayuzu), Android, iOS, Windows ve macOS icin tek bir .NET kod tabani kullanarak yerli uygulamalar geliştirmenizi saglar. IronWord ile .NET geliştiricileri, Microsoft Office gerektirmeden Microsoft Word (.docx) belgeleri oluşturabilir, okuyabilir, duzenleyebilir ve kaydedebilir — tam platformlar arasi.
IronWord, standart IronWord NuGet paketi kullanarak paylasilan .NET MAUI kod tabani uzerinden iOS'te sorunsuz calisir — platforma ozgu bir sürüm gerekmez.
IronWord NuGet Paketini Yukleyin
IronWord, standart bir capraz platform NuGet paketi olarak mevcuttur ve iOS dahil tüm ana .NET MAUI hedeflerini destekler.
Install-Package IronWord
.NET MAUI Projesi Oluşturun
Visual Studio'da:
- Dosya > Yeni > Projeye gidin.
- Çok platformlu altinda, .NET MAUI Uygulamasini secin.
- Projenizi adlandirin (ornegin, IronWordMauiIOS) ve Oluştur'a tiklayin.
IronWord'u Projenize Ekleyin
Paketi NuGet Paket Yonetici'si araciligiyla veya .csproj dosyanizi duzenleyerek ekleyebilirsiniz:
<ItemGroup>
<PackageReference Include="IronWord" Version="2025.5.0" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="IronWord" Version="2025.5.0" />
</ItemGroup>
Platform kosullarina ihtiyaçiniz yok — IronWord tüm hedeflerde otomatik olarak calisir.
XAML'de Uygulama Arayuzu Oluşturun
Word belgelerini yuklemek, duzenlemek ve kaydetmek icin basit bir UI ekleyin. Bunu yapmak için, bu kodu MainPage.xml koduna ekleyerek başlayın:
<?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">
<Label Text="IronWord iOS Demo"
FontSize="24"
FontAttributes="Bold"
HorizontalOptions="Center"
TextColor="#222"/>
<Button Text=" Open Word Document"
Clicked="OpenDocx"
BackgroundColor="#007AFF"
TextColor="White"
CornerRadius="10"
HeightRequest="50"/>
<Editor x:Name="docEditor"
Placeholder="Start editing..."
AutoSize="TextChanges"
HeightRequest="250"
FontSize="16"
TextColor="#333"
BackgroundColor="#F9F9F9"
CornerRadius="10"
Margin="0,10,0,0"/>
<Button Text=" Save as .docx"
Clicked="SaveDocx"
BackgroundColor="#34C759"
TextColor="White"
CornerRadius="10"
HeightRequest="50"/>
<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">
<Label Text="IronWord iOS Demo"
FontSize="24"
FontAttributes="Bold"
HorizontalOptions="Center"
TextColor="#222"/>
<Button Text=" Open Word Document"
Clicked="OpenDocx"
BackgroundColor="#007AFF"
TextColor="White"
CornerRadius="10"
HeightRequest="50"/>
<Editor x:Name="docEditor"
Placeholder="Start editing..."
AutoSize="TextChanges"
HeightRequest="250"
FontSize="16"
TextColor="#333"
BackgroundColor="#F9F9F9"
CornerRadius="10"
Margin="0,10,0,0"/>
<Button Text=" Save as .docx"
Clicked="SaveDocx"
BackgroundColor="#34C759"
TextColor="White"
CornerRadius="10"
HeightRequest="50"/>
<Label x:Name="statusLabel"
FontSize="14"
TextColor="Gray"
HorizontalOptions="Center"/>
</VerticalStackLayout>
</ContentPage>
Bu, Word icerigini yukle/kaydet icin dugmeler ve bir editor arayuzu oluşturur.
Paylasilan Kodda IronWord'u Kullanin
MainPage.xaml.cs projenizde, IronWord kullanarak DOCX belgelerini okuma ve yazma işlemlerini uygulayin:
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();
}
}
Imports IronWord
Imports IronWord.Models
Imports Microsoft.Maui.Storage
Imports System.Text
Namespace IronWordMauiIOS
Partial Public Class MainPage
Inherits ContentPage
Public Sub New()
InitializeComponent()
License.LicenseKey = "YOUR-LICENSE-KEY"
End Sub
Private Async Sub OpenDocx(ByVal sender As Object, ByVal e As EventArgs)
Try
Dim file = Await FilePicker.PickAsync()
If file Is Nothing Then
Return
End If
Dim path As System.String = System.IO.Path.Combine(FileSystem.CacheDirectory, file.FileName)
Using source = Await file.OpenReadAsync()
Using target = System.IO.File.Create(path)
Await source.CopyToAsync(target)
End Using
End Using
Dim doc = New WordDocument(path)
docEditor.Text = ExtractText(doc)
statusLabel.Text = "Document loaded successfully."
Catch ex As Exception
statusLabel.Text = $"Error: {ex.Message}"
End Try
End Sub
Private Async Sub SaveDocx(ByVal sender As Object, ByVal e As EventArgs)
Try
Dim document = New WordDocument()
Dim paragraph As New Paragraph()
paragraph.Texts.Add(New TextContent(docEditor.Text))
document.Paragraphs.Add(paragraph)
Dim fileName = $"ExportedDoc_{DateTime.Now:yyyyMMddHHmmss}.docx"
Dim path As System.String = System.IO.Path.Combine(FileSystem.AppDataDirectory, fileName)
document.SaveAs(path)
statusLabel.Text = $"Saved to: {fileName}"
Catch ex As Exception
statusLabel.Text = $"Save error: {ex.Message}"
End Try
End Sub
Private Function ExtractText(ByVal doc As WordDocument) As String
Dim sb = New StringBuilder()
For Each para In doc.Paragraphs
For Each element In para.Texts
Dim tempVar As Boolean = TypeOf element Is TextContent
Dim text As TextContent = If(tempVar, CType(element, TextContent), Nothing)
If tempVar Then
sb.AppendLine(text.Text)
End If
Next element
Next para
Return sb.ToString()
End Function
End Class
End Namespace
Proje Dosyasi Genel Bakisi
Proje yapiniz simdi sunlari icermelidir:
IronWordMauiIOS/
│
├── MainPage.xaml ← UI Duzeni
├── MainPage.xaml.cs ← UI icin Mantik (Word belge işlemleri)
├── IronWordMauiIOS.csproj ← IronWord NuGet paketine referanslar
├── Platforms/ios/ ← iOS'a ozel ayarlar (burada değişiklik gerekmez)
└── ...
Projeyi Çalıştırın
- Hedefi iOS Simulator olarak ayarlayin.
- Calistir'a basin.
- Simule edilen iOS cihazinizda .docx belgelerini dogrudan okuyup yazmayi test edin.
Son Notlar
- Tam platformlar arasi (iOS, Android, Windows, macOS)
- Microsoft Office veya Interop gereksinimi yok
- %100 C# / .NET MAUI yerli
- Cevirimdisi calisir
- Editorler, ozgecmis oluşturuculari, belge görüntüleyiciler icin mukemmeldir
Sıkça Sorulan Sorular
IronWord nedir ve iOS üzerinde nasıl kullanılabilir?
IronWord, .NET uygulamaları ve iOS dahil olmak üzere Word belgelerini işlerken güçlü bir kütüphanedir. Geliştiricilere mobil uygulamalarında Word belgeleri oluşturma, değiştirme ve dönüştürme yeteneklerini sorunsuz bir şekilde sunar.
IronWord'u iOS projemde nasıl entegre edebilirim?
IronWord'u iOS projenize entegre etmek için, IronWord kütüphanesini .NET çözümünüze eklemeniz, projenizi onu referans alacak şekilde yapılandırmanız ve sağlanan API'leri Word belgelerini yönetmek için kullanmanız gerekir.
IronWord'u iOS üzerinde kullanmak için sistem gereksinimleri nelerdir?
IronWord, iOS geliştirme ortamınızda uyumlu bir .NET ortamı gerektirir. Geliştirme ortamınızın güncel olduğundan ve sorunsuz entegrasyon için gerekli frameworkleri desteklediğinden emin olun.
IronWord, iOS üzerinde Word belgelerini diğer formatlara dönüştürebilir mi?
Evet, IronWord, iOS uygulamalarınızda Word belgelerini çeşitli formatlara, örneğin PDF'ye dönüştürebilir; bu da çok yönlü belge işleme ve paylaşımını sağlar.
IronWord, iOS üzerinde belge manipülasyonlarını destekliyor mu?
Kesinlikle, IronWord, iOS uygulamalarında doğrudan metin düzenlemesi, resim ekleme ve belge özelliklerini yönetme gibi geniş bir yelpazede belge manipülasyonlarını destekler.
IronWord kullanarak iOS üzerinde sıfırdan Word belgeleri oluşturmak mümkün mü?
Evet, IronWord, iOS üzerinde sıfırdan yeni Word belgeleri oluşturmanıza olanak tanır ve içerik, biçimlendirme ve stilleri programlı olarak eklemek için kapsamlı bir araç paketi sunar.
IronWord, iOS uygulamalarında Word belge güvenliğini nasıl sağlar?
IronWord, belge güvenliğini yönetmek için parola koruması ve şifreleme gibi özellikler içerir, iOS uygulamalarında Word belgelerinizin güvende kalmasını sağlar.
iOS üzerinde IronWord kullanımı için örnek projeler mevcut mu?
Evet, Iron Software, iOS üzerinde IronWord ile hızlı başlangıç yapmanız için çeşitli özellikleri ve kullanım senaryolarını gösteren örnek projeler ve belgeler sunar.
IronWord, iOS dağıtımı için ek lisans gerektiriyor mu?
IronWord'un üretim ortamlarında, iOS uygulamaları dahil olmak üzere, dağıtımı için geçerli bir lisans gereklidir. Kullanım kılavuzlarına uymak için lisans koşullarını kontrol ettiğinizden emin olun.

